Estructuras de datos

En esta lista de reproducción enseñaré los principales tipos de estructuras de datos que podemos utilizar para almacenar información compleja en un programa de ordenador, como las listas, las colas o los árboles. Además, haré ejemplos en C y en Java para que puedas ver cómo se puede programar esa estructura de datos en un ordenador.

3:27

1. Qué son las estructuras de datos

Las estructuras de datos permiten representar de forma eficiente información compleja en un programa de ordenador. En este episodio te presentaré las principales estructuras de datos que existen.

12:20

2. Listas enlazadas: Teoría

En este vídeo te cuento qué es una lista enlazada, cómo se representa de forma gráfica y cuáles son las principales operaciones que podemos hacer con una lista, como agregar o quitar elementos.

17:58

3. Listas enlazadas en C

En este ejemplo completo te enseñaré cómo construir una lista enlazada en C definiendo las estructuras y las operaciones.

16:36

4. Listas enlazadas en Java

En este ejemplo completo te enseñaré cómo construir una lista enlazada en Java definiendo las estructuras y las operaciones.

5:48

5. Colas: teoría

Una cola es un tipo de estructura de datos que permite agregar elementos únicamente al final y del que se pueden extraer elementos únicamente al principio, como las colas de la vida real.

11:41

6. Colas en C

En este ejemplo verás cómo implementar en C una cola definiendo las operaciones para encolar elementos, para obtener la cabeza de una cola y para eliminar la cabeza de una cola.

10:09

7. Colas en Java

En este ejemplo te enseño cómo construir una cola en Java utilizando una implementación basada en nodos enlazados, con operaciones para encolar, desencolar y obtener elementos.

7:02

8. Pilas: teoría

Una pila es una estructura en la que nosotros podemos introducir y retirar elementos, pero siempre retiramos el último elemento que hayamos metido. En este vídeo te explico sus operaciones.

11:08

9. Pilas en C

En este ejemplo completo te enseñaré cómo construir una estructura de datos pila en C utilizando nodos enlazados entre sí. Es un ejemplo de implementación completo.

10:25

10. Pilas en Java

En este ejemplo completo te enseñaré cómo construir una estructura de datos pila en Java utilizando nodos enlazados entre sí. Es un ejemplo de implementación completo.

10:49

11. Introducción a los árboles

Los árboles son estructuras no lineales que permiten representar información jerárquica. En este primer episodio sobre árboles os introduzco al concepto de árbol.

9:02

12. Árboles binarios

En este episodio introduzco a los árboles binarios. Cómo los podemos clasificar (completos, balanceados...), y cómo los podemos recorrer: en anchura, en pre-orden, en inorden o en post-orden.

10:26

13. Árboles binarios de búsqueda (parte 1)

Los BST o árboles binarios de búsqueda son árboles binarios donde la raíz siempre es mayor que el subárbol izquierdo y menor que el subárbol derecho. Hoy os explico cómo insertar y buscar elementos.

7:43

14. Árboles de búsqueda binaria (parte 2)

Cómo eliminar elementos de un árbol binario de búsqueda. Para eliminar un elemento del árbol tendremos que buscar su nodo, y actuar según cuántos hijos tenga el nodo.

13:06

15. BSTs en C (parte 1)

En este ejemplo implemento un árbol binario de búsqueda en C. En esta primera parte os enseño cómo definir la estructura y cómo implementar las operaciones Insertar y Existe.

8:03

16. BSTs en C (parte 2)

Continuamos viendo cómo desarrollar un árbol de búsqueda binario en C, ahora viendo cómo implementar las operaciones de recorrido preorden, inorden y postorden. Cuidado con los números.

18:14

17. BSTs en C (y parte 3)

Implementar la operación Eliminar Nodo no es fácil, pero había que hacerlo, ¿no? Nos hará falta implementar otras operaciones auxiliares: ObtenerNodo, ObtenerMinimo, Reemplazar...

8:58

18. BSTs en Java (parte 1)

Comenzamos implementando este ejemplo de árbol binario de búsqueda desarrollado en Java en el que implementaremos métodos para insertar, eliminar y procesar elementos.

10:33

19. BSTs en Java (parte 2)

Segunda parte de este ejemplo de árbol binario de búsqueda en Java en el que implementamos operaciones para obtener propiedades y recorrer el árbol en preorden, inorden y postorden.

9:36

20. BSTs en Java (parte 3)

Terminamos este ejemplo de estructuras de datos de Java con la implementación de la operación eliminar, la más tediosa dentro de la estructura de datos del árbol binario de búsqueda.

8:06

21. Árbol desde preorden e inorden

O cómo crear un árbol binario cuando todo lo que te dan es un recorrido en preorden y en inorden.

7:45

22. Árbol desde inorden y postorden

Cómo crear un árbol binario a partir de su representación en inorden y de su representación en postorden.

5:40

23. Árboles k-arios

Una visión superficial a los árboles que tienen un número de hijos más grande que 2. Sobre todo, cómo representarlo y dónde se suele usar un árbol k-ario.

10:40

24. Árboles B (parte 1)

En este episodio se introduce el concepto de árbol B, enseñando en qué consiste, qué diferencias hay con un árbol de búsqueda normal y cómo y por qué lo querríamos usar.