Descripción
Dos de las disciplinas clásicas en todas las carreras relacionadas con la Informática y las Ciencias de la Computación son Estructuras de Datos y Algoritmos, o bien una sola disciplina si ambas se estudian integradas: Algoritmos y Estructuras de Datos. El estudio de estructuras de datos y de algoritmos es tan antiguo como el nacimiento de la programación y se ha convertido en estudio obligatorio en todos los currículos desde finales de los años 70 y sobre todo en esa misma década, cuando apareció el lenguaje Pascal de la mano del profesor Niklaus Wirtz, y posteriormente en la década de los ochenta con la aparición de su obra ya clásica Algorithms and Data Structures (1986).
Muchas facultades y escuelas de Ingeniería, así como institutos tecnológicos, comienzan sus cursos de Estructuras de Datos con el soporte de Java. Existen muchas razones por las cuales pensamos que Java es apropiado para la formación en estructuras de datos. Una de ellas es que Java, es un lenguaje más moderno que C o C++, con mejores funcionalidades, orientado a objetos, a la programación en Web, Además, a partir de Java 1.5 permite diseñar clases genéricas, de forma similar a las plantillas (templates) de C++.
El primer problema que se suele presentar al estudiante de Estructura de Datos que, probablemente, procederá de un curso de nivel básico, medio o avanzado, de introducción o fundamentos de programación o bien de iniciación en algoritmos, es precisamente el modo de afrontar información compleja desde el principio. Aunque es verdad que Java1 tiene muchas ventajas sobre un lenguaje procedimental, por ejemplo C, muchas de estas ventajas no se hacen evidentes hasta que un programa se vuelve o hace más complejo.
En este caso, el paradigma orientado a objetos es una herramienta de programación y organización muy poderosa y con grandes ventajas para la enseñanza y posterior tarea profesional. A primera vista, Java es más interesante que un lenguaje procedimental por su enfoque orientado a objetos, aunque puede parecer, en el caso del análisis y diseño de algoritmos y estructuras de datos, que esta propiedad añade una complejidad inherente y no es así, la implementación en clases y objetos puede darle una nueva potencialidad. Pensando en esta transición se ha incluido un capítulo dedicado a conceptos teórico-prácticos de orientación a objetos.
En cualquier caso, el curso está soportando la comprensión del tipo abstracto de datos (TAD) de modo que el estilo de programación empleado en el texto se basa en el estudio de tipos abstractos de datos como base para la formación en orientación a objetos.
Capítulo 1. Algoritmos y estructuras de datos.
Capítulo 2. Tipos de datos: Clases y objetos.
Capítulo 3. Arrays (arreglos) y cadenas.
Capítulo 4. Clases derivadas y polimorfismo.
Capítulo 5. Algoritmos recursivos.
Capítulo 6. Algoritmos de ordenación y búsqueda.
Capítulo 7. Algoritmos de ordenación de archivos.
Capítulo 8. Listas enlazadas.
Capítulo 9. Pilas.
Capítulo 10. Colas.
Capítulo 11. Colas de prioridades y montículos.
Capítulo 12. Tablas de dispersión, funciones hash.
Capítulo 13. Árboles. Árboles binarios y árboles ordenados.
Capítulo 14. Árboles de búsqueda equilibrados.
Capítulo 15. Grafos, representación y operaciones.
Capítulo 16. Grafos, algoritmos fundamentales.
Capítulo 17. Colecciones.
Consulta los datos bibliográficos principales de esta edición para identificar correctamente el recurso, revisar su autoría y verificar detalles como ISBN, tema, subtema, archivo e idioma.
- Título: Estructuras de Datos en Java
- Autor/es: Luis Joyanes Aguilar | Ignacio Zahonero Martínez
- Edición: 1ra Edición
- Año de edición: 2008
- Tipo de archivo: eBook
- Idioma: eBook en Español
- ISBN-13: 9788448156312
- Subtema: Algoritmos y Estructuras de Datos | Programación en Java
Citar este libro
Preparando citaciones...
Aún no hay comentarios
Sé el primero en compartir tu opinión sobre este contenido.
Escribir un comentario