
JavaScript Data Structures and Algorithms
Sammie Bae
- Editorial
- Apress
- Año
- 2019
- Páginas
- ~357
- Nivel
- Básico
De qué trata
Guía práctica y accesible escrita por Sammie Bae y publicada por Apress en 2019, diseñada para trasladar las estructuras de datos y algoritmos clásicos al contexto de JavaScript moderno (estándar ECMAScript 6+ / Node.js). Está concebida para desarrolladores web principiantes e intermedios, autodidactas y graduados de bootcamps que manejan el lenguaje en su trabajo cotidiano pero carecen de una base formal en ciencias de la computación y necesitan prepararse para entrevistas técnicas de programación.
El contenido introduce el análisis de complejidad con notación Big-O y examina los tipos de datos fundamentales y la gestión de memoria en JavaScript (el call stack, la memoria heap y el recolector de basura). A continuación, implementa paso a paso desde cero listas enlazadas (simples y dobles), pilas, colas, tablas hash, conjuntos (Sets), árboles binarios de búsqueda (BST), montículos (heaps) y grafos. En el ámbito algorítmico, cubre recursión, técnicas de ordenación (burbuja, selección, inserción, merge sort y quicksort), búsqueda lineal y binaria, algoritmos de grafos (BFS, DFS y Dijkstra), manipulación de bits y principios de programación dinámica.
El libro no construye una aplicación de software integral; en su lugar, cada capítulo propone baterías de ejercicios prácticos basados en retos de código típicos de plataformas como LeetCode o HackerRank, acompañados de sus soluciones explicadas en JavaScript. Su mayor acierto es hacer asequibles conceptos que a menudo se enseñan en Java o C++, usando construcciones idiomáticas de JavaScript. Deja fuera optimizaciones avanzadas de bajo nivel para el motor V8 o librerías de inmutabilidad persistente, por lo que constituye un excelente manual de entrenamiento para superar filtros técnicos de contratación.
- JavaScript ES6
- Estructuras de datos
- Algoritmos
- Notación Big-O
- Listas enlazadas
- Árboles binarios
- Grafos
- Algoritmos de ordenación
- Programación dinámica
- Entrevistas técnicas
- Recursión
¿Cómo enseña?
Con ejercicios
- ✓ Incluye ejercicios
- ✗ Sin proyectos

