Colección de algoritmos implementados en Python y mantenida por la comunidad, pensada para el aprendizaje y la educación.
trekhleb/javascript-algorithms
Colección en JavaScript de algoritmos clásicos y estructuras de datos, cada uno con explicaciones y enlaces para profundizar.
- Estrellas
- 196,685
- Forks
- 31,010
- Issues abiertos
- 413
- Último commit
- hace 3 meses
¿Qué es?
Este repositorio implementa una amplia variedad de algoritmos y estructuras de datos comunes en JavaScript. Abarca estructuras básicas como listas enlazadas, pilas, colas, tablas hash y heaps, además de árboles (BST, AVL, rojo-negro, de segmentos y Fenwick), grafos, tries y cachés LRU.
Los algoritmos se organizan por tema (matemáticas, conjuntos, cadenas, búsqueda, ordenamiento, grafos, criptografía y algunos ejemplos de machine learning) y por paradigma, como fuerza bruta, greedy, divide and conquer, programación dinámica y backtracking. Cada entrada indica su nivel de dificultad y enlaza a su propia página explicativa.
El repositorio también incluye tablas de complejidad Big O para estructuras de datos y algoritmos de ordenamiento, además de scripts de npm para instalar dependencias, ejecutar ESLint y correr pruebas por nombre.
Funciones clave
- 01Implementa estructuras de datos fundamentales, como listas enlazadas, heaps, tries y varias clases de árboles.
- 02Organiza los algoritmos por tema y por paradigma, como programación dinámica y backtracking.
- 03Cada algoritmo enlaza a una página explicativa independiente con lecturas adicionales y referencias a videos.
- 04Incluye tablas comparativas de complejidad Big O para estructuras de datos y algoritmos de ordenamiento.
- 05Ofrece scripts de npm para ejecutar el linter y las pruebas, con la opción de filtrar estas últimas por nombre.
Casos de uso
- Prepararse para entrevistas técnicas que evalúan algoritmos en JavaScript.
- Estudiar el funcionamiento de una estructura de datos o un algoritmo de ordenamiento leyendo su implementación.
- Consultar la complejidad temporal y espacial de estructuras y algoritmos de ordenamiento comunes.
- Usar el código como referencia al implementar lógica similar en un proyecto de JavaScript.
Temas
Preguntas frecuentes
- ¿Qué es javascript-algorithms?
- Colección en JavaScript de algoritmos clásicos y estructuras de datos, cada uno con explicaciones y enlaces para profundizar. Este repositorio implementa una amplia variedad de algoritmos y estructuras de datos comunes en JavaScript. Abarca estructuras básicas como listas enlazadas, pilas, colas, tablas hash y heaps, además de árboles (BST, AVL, rojo-negro, de segmentos y Fenwick), grafos, tries y cachés LRU.
- ¿javascript-algorithms es gratuito? ¿Qué licencia tiene?
- javascript-algorithms es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿javascript-algorithms sigue mantenido?
- Actualizado en los últimos 6 meses. El último commit de javascript-algorithms fue el 26 jul 2026.
- ¿Para qué puedo usar javascript-algorithms?
- Prepararse para entrevistas técnicas que evalúan algoritmos en JavaScript. Estudiar el funcionamiento de una estructura de datos o un algoritmo de ordenamiento leyendo su implementación. Consultar la complejidad temporal y espacial de estructuras y algoritmos de ordenamiento comunes. Usar el código como referencia al implementar lógica similar en un proyecto de JavaScript.
- ¿Dónde consigo javascript-algorithms?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/trekhleb/javascript-algorithms
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Lista seleccionada de cursos de robótica en línea, clases universitarias, libros y recursos prácticos para aprender por cuenta propia, con etiquetas bilingües.
Una ruta gratuita y a tu propio ritmo por un plan de estudios completo de ciencias de la computación, basado en cursos y libros en línea y organizado en Intro, Core y Advanced CS.
Lista curada de cursos universitarios de informática con clases en video, organizados por tema.
Una lista de larga trayectoria con preguntas y respuestas para entrevistas sobre ReactJS, que abarca React, Router, Redux, testing y React Native.
Bibliotecas open source para React y Svelte con las que crear interfaces interactivas basadas en nodos, como diagramas de flujo, grafos y editores de workflows.