</> CodeBooks
    ← Volver a Algoritmos (página 5)
    Portada de Data Structures and Algorithms in Python

    Data Structures and Algorithms in Python

    Michael H. Goldwasser, Michael T. Goodrich, Roberto Tamassia

    Editorial
    Wiley
    Año
    2013
    Páginas
    ~748
    Nivel
    Básico

    De qué trata

    Data Structures and Algorithms in Python, coescrito por Michael H. Goldwasser, Michael T. Goodrich y Roberto Tamassia, traslada la prestigiosa tradición pedagógica de los autores al entorno moderno de Python 3. Concebido como texto central para cursos universitarios de fundamentos de informática (CS2), está destinado a estudiantes de grado, ingenieros en formación y programadores autodidactas con conocimientos elementales de programación en Python que necesitan aprender a modelar datos eficientemente, diseñar clases robustas y analizar con rigor matemático la complejidad espacial y temporal de los algoritmos computacionales.

    La obra comienza consolidando los rasgos distintivos y modismos de Python 3: el modelo de objetos, tipos mutables e inmutables, generadores con yield, iteradores, manejo de excepciones, métodos especiales dunder y clases abstractas mediante el módulo abc. Establece las bases del análisis asintótico con la notación Big-O, examinando minuciosamente el coste temporal real y el análisis amortizado de la redimensión de las secuencias dinámicas nativas (list, tuple y str). Detalla la recursión y el desarrollo desde cero de estructuras lineales (pilas, colas circulares, deques, listas enlazadas simples, dobles y circulares, y ADTs de lista posicional). Prosigue con estructuras jerárquicas y relacionales: árboles binarios y generales, colas de prioridad implementadas con montículos (heaps), tablas de dispersión (hash tables) con resolución de colisiones por sondeo o encadenamiento, mapas ordenados y skip lists, árboles de búsqueda balanceados (árboles AVL, Splay, 2-4 y árboles Rojo-Negro), ordenación y selección (Merge-Sort, Quick-Sort, Radix-Sort, Quick-Select), procesamiento de textos (KMP, Boyer-Moore, árboles trie, compresión Huffman), programación dinámica y grafos (DFS, BFS, caminos mínimos con Dijkstra y árboles de expansión mínima con Kruskal y Prim-Jarník), cerrando con gestión de memoria y árboles B.

    El punto más destacado del libro es cómo adopta la filosofía idiomática y la expresividad de Python sin sacrificar en ningún momento el rigor analítico de las ciencias de la computación clásicas, transparentando la complejidad oculta tras las estructuras nativas del lenguaje. Cuenta con más de 700 ejercicios distribuidos metódicamente en tres categorías: refuerzo conceptual (Reinforcement), razonamiento analítico y creativo (Creativity) y desarrollo de código (Projects). Prescinde de librerías externas como NumPy o dependencias de terceros para enfocarse por entero en la construcción autónoma de algoritmos y estructuras. Es una de las guías universitarias más rigurosas y completas disponibles para dominar la algoritmia con Python.

    • Python 3
    • Estructuras de datos
    • Notación Big-O
    • POO en Python
    • Generadores e iteradores
    • Árboles binarios
    • Árboles AVL
    • Tablas hash
    • Heaps
    • Grafos
    • Programación dinámica
    • Compresión de Huffman

    ¿Cómo enseña?

    TeóricoPráctico

    Teoría + práctica

    • ✓ Incluye ejercicios
    • ✗ Sin proyectos

    Más de Algoritmos con nivel Básico