Estructuras de Datos

Estructuras de datos

Objetivo

Este libro tiene como objetivo presentar las estructuras de datos, así como los algoritmos necesarios para tratarlas. El lenguaje utilizado para ello es algorítmico, independiente de cualquier lenguaje de programación. Esta característica es muy importante, ya que permite al lector comprender las estructuras de datos y los algoritmos asociados a ellas sin relacionarlos a lenguajes de programación particulares. Se considera que una vez que el lector domine estos conceptos, podrá implementarlos fácilmente en cualquier lenguaje.

Si bien cada uno de los temas son desarrollados de niveles simples a niveles complejos, se supone que el lector ya conoce ciertos conceptos, por ejemplo el de datos simples (enteros, reales, booleanos, carácter); el de instrucción (declarativa, asignación, entrada/salida), y el de operadores (aritméticos, relacionales y lógicos). Asimismo se utiliza, pero no se expone, el concepto de variables y constantes. En los algoritmos se escriben los nombres de variables con mayúsculas (SUMA, N, etc.), lo mismo para las constantes booleanas (VERDADERO y FALSO).

Cada capítulo cuenta con un importante número de ejercicios. Con éstos se sigue el mismo criterio aplicado en el desarrollo de los distintos temas, es decir, se proponen ejercicios en los que se aumenta gradualmente el nivel de complejidad.

Contenido

  1. Estructuras Fundamentales
    1. Introducción
    2. Arreglos
      1. Definición de arreglos
      2. Operaciones con arreglos
    3. Arreglos multidimencionales
      1. Arreglos bidimensionales
      2. Arreglos de más de dos dimensiones
    4. Registros
      1. Definición de registros
      2. Acceso a los campos de un registro
      3. Diferencias con arreglos
      4. Combinaciones entre arreglos y registros
      5. Arreglos de registros-arreglos paralelos
    5. Conjuntos
      1. Definición de conjuntos
      2. Operaciones con conjuntos
      3. Representación en memoria

  2. Representación Lineal De Estructuras No Lineales
    1. Introducción
    2. Arreglos bidimensionales
    3. Arreglos de más de dos dimensiones
    4. Matrices poco densas
      1. Matrices cuadradas poco densas

  3. Pilas y Colas
    1. Introducción
    2. Pilas
      1. Representación de pilas
      2. Operaciones con pilas
      3. Aplicaciones
    3. Colas
      1. Representación de colas
      2. Operaciones con colas
      3. colas circulares
      4. Doble cola
      5. Aplicaciones de colas

  4. Recursión
    1. Introducción
    2. Funcionamiento interno de la recursión
    3. El problema de las torres de Hanoi
    4. Uso de pilas para simular recursión.
    5. Casos interesantes

  5. Listas
    1. Introducción
    2. Listas
      1. Operaciones con listas
      2. Listas circulares
    3. Listas doblemente ligadas
      1. Operaciones con listas doblemente ligadas
      2. Listas doblemente ligadas circulares
    4. Aplicaciones
      1. Representación de polinomios
      2. Solución de colisiones (hash)

  6. Árboles
    1. Introducción
    2. Árboles en general
      1. Características y propiedades de los árboles
      2. Longitud de camino interno y externo
    3. Árboles binarios
      1. Representación de árboles generales como árboles binarios
      2. Representación de árboles binarios en memoria
      3. Recorridos en árboles binarios
      4. Árboles binarios de búsqueda
    4. Árboles balanceados
    5. Árboles multicaminos
      1. Árboles--B
      2. Árboles--B-

  7. Metodos de Ordenación
    1. Introducción
    2. Ordenación interna
      1. Ordenación por intercambio directo (burbuja)
      2. Ordenación por inserción directa
      3. Ordenación por selección directa
      4. Ordenación por el método de Shell
      5. Ordenación por el método quickSort
      6. Ordenación por el método del montículo (heapsort)
    3. Ordenación externa
      1. Intercalación de archivos
      2. Ordenación de archivos

  8. Metodos de Búsqueda
    1. Introducción
    2. Búsquda interna
      1. Búsqueda de archivos secuenciales
      2. Búsqueda binaria
      3. Búsqueda por transformación de claves (hash)
      4. Búsqueda dinámica por transformación de claves
      5. Árboles de búsqueda
    3. Búsqueda externa
      1. Búsqueda en archivos secuenciales
      2. Búsqueda binaria
      3. Búsqueda por transformación de claves (hash)
      4. Búsqueda dinámica por transformación de claves
      5. Listas invertidas
      6. Multilistas

  9. Bibliografía

  10. Glosario

ˇDime tu opinión!

Osvaldo Cairó B.
Last modified: Sun Aug 29 09:03:06 CDT 1999