
- Spanish
- PDF
- Disponible en iOS y Android
Programacion Orientada a Objetos y Estructura de Datos a Fondo
Descripción del libro
Programación orientada a objetos y estructura de datos a fondo es un libro pensado para extender los conocimientos que fueron adquiridos a lo largo de los cursos de las asignaturas iniciales de programación; principalmente de Programación estructurada. La finalidad de iniciar explicando Programación Orientada a Objetos (POO) es proveer una herramienta que permita encapsular la lógica y la complejidad de aquellos algoritmos; ocultándola para no verla. Y así concentrarse en el análisis, diseño y desarrollo de algoritmos con mayor grado de complejidad. Para quienes adquirieron sus conocimientos básicos programando en C, la obra comienza explicando los conceptos principales de encapsulamiento implementándolos con C++. Pero esto es solo el comienzo, ya que el curso de programación avanzada que se propone transita por los senderos del lenguaje Java. ¿Por qué Java? Porque hoy en día, y desde hace más de 20 años, Java es el lenguaje de programación con mayor nivel de aceptación en el ámbito profesional. La mayoría de las empresas desarrollan sus aplicaciones en Java. Y, aunque aquí el foco principal estará puesto sobre la lógica algorítmica, cuando implemente estos algoritmos con Java, el lector estará adquiriendo una destreza que le permitirá incorporarse a trabajar en proyectos de desarrollo que utilicen este lenguaje.
Preguntas frecuentes
- El plan Essential es ideal para los estudiantes y los profesionales a los que les gusta explorar una amplia gama de temas. Accede a la biblioteca Essential, con más de 800 000 títulos de confianza y superventas sobre negocios, crecimiento personal y humanidades. Incluye un tiempo de lectura ilimitado y la voz estándar de «Lectura en voz alta».
- Complete: perfecto para los estudiantes avanzados y los investigadores que necesitan un acceso completo sin ningún tipo de restricciones. Accede a más de 1,4 millones de libros sobre cientos de temas, incluidos títulos académicos y especializados. El plan Complete también incluye funciones avanzadas como la lectura en voz alta prémium y el asistente de investigación.
Ten en cuenta que no será compatible con los dispositivos que se ejecuten en iOS 13 y Android 7 o en versiones anteriores. Obtén más información sobre cómo usar la aplicación.
Información
Índice
- Mensaje del Editor
- Contenido
- Web de apoyo
- Prólogo
- Introducción
- 1 - Encapsulamiento a través de clases y objetos
- 1.1 Introducción
- 1.2 Clases y objetos
- 1.3 Encapsulamiento de estructuras lineales
- 1.4 El lenguaje de programación Java
- 1.5 Resumen
- 2 - Introducción al lenguaje de programación Java
- 2.1 Introducción
- 2.2 Comencemos a programar
- 2.3 Tipos de datos, operadores y estructuras de control
- 2.4 Tratamiento de cadenas de caracteres
- 2.5 Resumen
- 3 - Programación orientada a objetos
- 3.1 Introducción
- 3.2 Clases y objetos
- 3.3 Herencia y polimorfismo
- 3.4 Interfaces
- 3.5 Colecciones de objetos
- 3.6 Excepciones
- 3.7 Resumen
- 4 - Estructuras de datos lineales
- 4.1 Introducción
- 4.2 Estructuras estáticas
- 4.3 Estructuras dinámicas
- 4.4 Estructuras dinámicas en Java
- 4.5 Resumen
- 5 - Compresión de archivos mediante el algoritmo de Huffman
- 5.1 Introducción
- 5.2 El algoritmo de Huffman
- 5.3 Aplicación práctica
- 5.4 Análisis de clases y objetos
- 5.5 Interfaces e implementaciones
- 5.6 Manejo de archivos en Java
- 5.7 Clases utilitarias
- 5.8 Resumen
- 6 - Recursividad
- 6.1 Introducción
- 6.2 Conceptos iniciales
- 6.3 Otros ejemplos de recursividad
- 6.4 Permutar los caracteres de una cadena
- 6.5 Búsqueda binaria
- 6.6 Ordenamiento por selección
- 6.7 La función de Fibonacci
- 6.8 Resumen
- 7 - Árboles
- 7.1 Introducción
- 7.2 Árbol binario
- 7.4 Árbol Binario de Búsqueda
- 7.5 Árbol n-ario
- 7.6 Resumen
- 8 - Complejidad algorítmica
- 8.1 Introducción
- 8.2 Conceptos iniciales
- 8.3 Notación O grande (cota superior asintótica)
- 8.4 Cota inferior (Ω) y cota ajustada asintótica (Θ)
- 8.5 Resumen
- 9 - Algoritmos de ordenamiento
- 9.1 Introducción
- 9.2 Bubble sort (ordenamiento por burbujeo)
- 9.3 Selection sort (ordenamiento por selección)
- 9.4 Insertion sort (ordenamiento por inserción)
- 9.5 Quicksort (ordenamiento rápido)
- 9.6 Heapsort (ordenamiento por montículos)
- 9.7 Shellsort (ordenamiento Shell)
- 9.8 Binsort (ordenamiento por cajas)
- 9.9 Radix sort (ordenamiento de raíz)
- 9.10 Resumen
- 10 - Estrategia algorítmica
- 10.1 Introducción
- 10.2 Divide y conquista
- 10.3 Greedy, algoritmos voraces
- 10.4 Programación dinámica
- 10.5 Resumen
- 11 - Algoritmos sobre grafos
- 11.1 Introducción
- 11.2 Definición de grafo
- 11.3 El problema de los caminos mínimos
- 11.4 Árbol de cubrimiento mínimo (MST)
- 11.5 Resumen
- Bibliografía