Descripción
En esta obra se muestran técnicas de representación de estructuras de datos, utilizando como lenguaje contenedor Java. El contexto de las mismas de engloba en los siguientes principios:
- Cada estructura de datos tiene sus costes y sus beneficios. Los programadores y diseñadores necesitan una comprensión rigurosa y complet a de cómo evaluar los costes y beneficios para adaptarse a los nuevos retos que afronta la construcción de la aplicación. Estas propiedades requieren un conocimiento o comprensión de los principios de análisis de algoritmos y también una consideración práctica de los efectos significativos del medio físico empleado.
- Los temas relativos a costes y beneficios se consideran dentro del concepto de elemento de compensación.
- Esta edición, fundamentalmente, describe estructuras de datos, métodos de organización de grandes cantidades de datos y algoritmos, junto con el análisis de los mismos, en esencia, estimación del tiempo de ejecución de algoritmos.
- Los datos estructurados siguen a las necesidades. Los estudiantes deben aprender a evaluar primero las necesidades de aplicación, a continuación, encontrar una estructura de datos en correspondencia con sus funcionalidades.
- El método didáctico que sigue es buscar preferentemente enseñar a pensar en la resolución de un problema, siguiendo un determinado método ya conocido o bien creado por el propio lector, una vez esbozado el método, se estudia el algoritmo correspondiente junto con las etapas que pueden resolver el problema.
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 Java 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.
¿Qué piensas de este libro?
5 comentarios