Repolode
trekhleb

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