¿Qué libro debo elegir para estudiar la estructura de datos en lenguaje C?

Gracias por A2A,

  • Introducción a los algoritmos CLRS es el mejor libro para comprender las estructuras de datos y los algoritmos. Contiene código de ejemplo escrito en pseudocódigo. Puede convertirlo fácilmente a cualquier lenguaje de programación.

algunos otros libros son,

Además de los libros, hay muchos recursos en línea para aprender DS.

  1. Geeksforgeeks: descubrí que resolver problemas de estructura de datos de geeksforgeeks es bastante útil. Han agrupado los problemas en función de diferentes estructuras de datos y dieron una explicación suficiente para cada DS y los problemas.
  2. Puedes usar MYCODESCHOOL, te dará videos tutoriales simples sobre programación
  3. otro es TOPCODER

Y hay muchos más …

La mejor manera de aprender DS y Algoritmo es hacerlo.

Creo que esto te ayudará.

Todo lo mejor !

Simplemente siga los enlaces a continuación. Tome un curso de “Introducción a CS”. Concéntrese en las instrucciones básicas de codificación. Recursos en línea: Introducción a la informática, Udacity Aprenda a codificar (al menos) un lenguaje de programación orientado a objetos (C ++, Java®, Python®) Recursos en línea para comenzar programadores: Java Programming: An Introduction to Software, Duke University, Coursera Aprenda a programar: The Fundamentals, University of Toronto, CourseraIntroduction to Programming in Java, MITGoogle’s Python ClassIntroducción a la programación interactiva en Python, Rice University, Coursera Recursos en línea para programadores más experimentados: Java Programación: estructuras de datos y más allá, Universidad de California en San Diego, especialización en CourseraDiseño de programas informáticos, UdacityLearn to Program: Crafting Quality Code, University of Toronto, CourseraIntroducción a los lenguajes de programación, Brown University Aprenda otros lenguajes de programación Agregue a su repertorio: JavaScript® CSS y HTMLRuby®PHP®C®Perl®Shell® scriptLisp®Scheme®Onlin Recursos e: Codecademy Pruebe su código Aprenda a detectar errores, crear pruebas y romper su software. Recursos en línea: Pruebas de software, Udacity Depuración de software, Udacity Desarrolle razonamiento lógico y conocimiento de matemáticas discretas Recursos en línea: Matemáticas para ciencias de la computación, MITI Introducción a Mathematical Thinking, Stanford, CourseraProbabilistic Graphical Models, Stanford, CourseraGame Theory, Stanford y University of British Columbia, Coursera Desarrolle una sólida comprensión de algoritmos y estructuras de datos Aprenda sobre tipos de datos fundamentales (pila, colas y bolsas), algoritmos de clasificación (quicksort, mergesort , montón), estructuras de datos (árboles de búsqueda binarios, árboles rojo-negros, tablas hash) y Big O. Recursos en línea: Introducción a Algoritmos, Algoritmos MITA Parte 1 y Algoritmos Parte 2, Princeton, CourseraList of Algorithms, WikipediaList of Data Structures WikipediaBook : El manual de diseño de algoritmos, Steven S. Skiena Desarrollar un sólido conocimiento de los sistemas operativos Recursos en línea: Computer Science 162, UC Berkeley, YouTube Aprenda inteligencia artificial y aprendizaje automático Recursos en línea: ingeniero de aprendizaje automático nanodegree, UdacityDeep Learning, UdacityIntroduction to Robotics, Stanford UniversityMachine Learning, Stanford University Learn Desarrollo de Android Recursos en línea: Google Developer Training para Android, en Udacity Learn desarrollo web Recursos en línea: Capacitación para desarrolladores de Google para Web, en Udacity Aprenda otras habilidades para desarrolladores Recursos en línea: Sitio de capacitación para desarrolladores de Google Aprenda criptografía Recursos en línea: Criptografía, Stanford, Coursera Criptografía aplicada, Udacity Trabaje en proyectos fuera del aula Cree y mantenga un sitio web, construya su propio servidor o construya un robot. Recursos en línea: proyecto Capstone: análisis de datos de redes (sociales): desplácese hacia abajo hasta la parte inferior de la página, UCSD, proyecto CourseraCapstone: programación Java: una versión DIY de Netflix y motores de recomendación de Amazon, Duke University , CourseraProject Directory, ApacheGoogle Summ Er of Code Project Archive Trabaje en una pequeña parte de un sistema grande (base de código), lea y comprenda el código existente, rastree la documentación y depure GitHub es una excelente manera de leer el código de otras personas o contribuir a un proyecto. Recursos en línea: GitHub ®Kiln ™ Trabaje en proyectos con otros programadores. Esto lo ayudará a mejorar su capacidad de trabajar bien en equipo y le permitirá aprender de otros. Practique su conocimiento algorítmico y sus habilidades de codificación Practique su conocimiento algorítmico a través de competencias de codificación como Code Jam o el Concurso internacional de programación colegiada de ACM. Recursos en línea: Code JamKickstart, una competencia de Code Jam, es para estudiantes universitarios que buscan desarrollar sus habilidades de codificación y seguir una carrera en Google ACM ICPC Conviértase en un asistente de enseñanza Ayudar a enseñar a otros estudiantes ayudará a mejorar su conocimiento del tema. Obtenga experiencia en pasantías en ingeniería de software Encuentre las pasantías de Google en Ingeniería y Tecnología en nuestro sitio para estudiantes. Recurso en línea para prepararse para la entrevista para puestos de ingeniería de software, incluidas las pasantías: Dominar la Entrevista de Ingeniería de Software, UCSD, CourseraWell ..