Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: player en 02 de Febrero de 2010, 12:42:35 PM

Título: Estructuras de datos
Publicado por: player en 02 de Febrero de 2010, 12:42:35 PM
Hola, sabéis de algún libro que esté enfocado directamente a las estructuras de datos en c++? Lo que he encontrado viene dentro de libros que empiezan enseñando el lenguaje y ya al final del libro incluyen algo de esto, pero lo que estoy buscando es que el libro se centre completamente en esto de principio a fin.

Gracias.
Título: Re: Estructuras de datos
Publicado por: tamat en 02 de Febrero de 2010, 03:28:29 PM
Estructuras de datos me suena demasiado viejo, si te refieres a cómo estructurar los datos en tu aplicación, yo creo que con saber bien sobre Programación Orientada a Objetos tienes ya casi todo resuelto, luego si es en C pues te miras tutoriales de las STL y finalmente algun tutorial sobre patrones de diseño.
Título: Re: Estructuras de datos
Publicado por: Ruben en 02 de Febrero de 2010, 05:30:16 PM
Hi,
Busqueda rapida en amazon: "data structures" http://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=data+structures&x=0&y=0 (http://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=data+structures&x=0&y=0)  y te saldran tropotocientos de c++. Ahora la biblia de estructuras de datos y algoritmos es "Introduction to algorithms" del MIT de Cormen. http://www.amazon.com/Introduction-Algorithms-Third-Thomas-Cormen/dp/0262033844/ (http://www.amazon.com/Introduction-Algorithms-Third-Thomas-Cormen/dp/0262033844/) Te recomiendo encarecidamente que compres ese libro si estas estudiando estructuras de datos y algoritmos. Luego, si lo que quieres es tener ejemplos de estructuras de datos en c++ y tu nivel en c++ es alto, puedes mirarte el codigo de boost. De todas formas, si nos explicas para que lo quieres, pues te podremos aconsejar mejor.

CitarEstructuras de datos me suena demasiado viejo, si te refieres a cómo estructurar los datos en tu aplicación, yo creo que con saber bien sobre Programación Orientada a Objetos tienes ya casi todo resuelto, luego si es en C pues te miras tutoriales de las STL y finalmente algun tutorial sobre patrones de diseño.
Creo que estas confundiendo y mezclando conceptos. Una cosa es como almacenar y gestionar los datos de tu aplicacion (estructuras de datos y algoritmos, entre otros) y otra totalmente diferente es como diseñar tu aplicacion (tipo de lenguaje, patrones, entre otros). La programacion orientada a objetos esta igual de relacionada con estructuras de datos que cualquier otro tipo de programacion.  Los patrones de diseño y las estructuras de datos, pues no tienen nada que ver. STL es de C++. Y que te suene a viejo, no  aporta absolutamente nada.

Un saludo,
Ruben
Título: Re: Estructuras de datos
Publicado por: player en 02 de Febrero de 2010, 07:17:41 PM
Gracias por la información y perdón si no he especificado más. En concreto quería algo centrado en listas, pilas, colas, tablas de dispersión y todo lo relacionado con los árboles y grafos. Efectivamente me toca estudiarlo, se avecina un cuatrimestre muy divertido  ::)
Título: Re: Estructuras de datos
Publicado por: Ruben en 02 de Febrero de 2010, 08:46:42 PM
Hi,
pues lo dicho, el Cormen es el libro de referencia para eso mismo. En la segunda edicion, que es la que tengo yo, tiene: la III parte dedicada a estructuras de datos basicas (las que tu has citado) y la V a estructuras de datos mas avanzadas (fibonacci heaps, binomial heaps, etc...). Luego, tambien tiene la parte VI, dedicada a algoritmos de grafos. Los ejemplos que ponen estan en pseudo codigo, no en C++. Aunque no es muy complicado implementarlos en C++ sin hacer muchas florituras. Por lo que he visto van ya por la tercera edicion. http://mitpress.mit.edu/algorithms/ (http://mitpress.mit.edu/algorithms/)

Espero que te haya ayudado.  :)

Un saludo,
Ruben
Título: Re: Estructuras de datos
Publicado por: player en 03 de Febrero de 2010, 01:26:40 PM
Gracias por tu ayuda Ruben, lo más seguro es que me decante por ese libro.

Saludos.