Árboles y grafos
Explore estructuras de árboles y grafos para representar datos jerárquicos y de redes
Árboles y grafos es una lección gratuita de C Academy en CoddyKit. Esta es la lección 3 de 3. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C Academy incluye 3 lecciones en total.
Árboles y grafos en C
Árboles y grafos en C
Los árboles y los grafos son estructuras de datos no lineales que se utilizan para representar datos jerárquicos y de redes.
En esta lección, aprenderá:
- Cómo se estructuran los árboles y los grafos.
- Cómo implementar un árbol binario en C.
- Cómo representar grafos mediante listas y matrices de adyacencia.

¿Qué es un árbol?
¿Qué es un árbol?
Un árbol es una estructura de datos jerárquica formada por nodos.
Términos clave:
- Raíz - El nodo superior.
- Padre e hijo - Nodos conectados directamente.
- Hoja - Un nodo sin hijos.
Ejemplo: nodo de un árbol binario
Ejemplo: nodo de un árbol binario
En C, un nodo de un árbol binario se define mediante una struct con punteros a los hijos izquierdo y derecho.
#include <stdio.h>
#include <stdlib.h>
struct Node {
int data;
struct Node *left, *right;
};
struct Node* createNode(int data) {
struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));
newNode->data = data;
newNode->left = newNode->right = NULL;
return newNode;
}
int main() {
struct Node *root = createNode(10);
return 0;
}Recorrido de un árbol binario
Recorrido de un árbol binario
Métodos de recorrido:
- Inorden (LNR) - Izquierda, nodo, derecha.
- Preorden (NLR) - Nodo, izquierda, derecha.
- Postorden (LRN) - Izquierda, derecha, nodo.
Ejemplo: recorrido inorden
Ejemplo: recorrido inorden
Este programa realiza un recorrido inorden de un árbol binario.
#include <stdio.h>
#include <stdlib.h>
struct Node {
int data;
struct Node *left, *right;
};
void inorder(struct Node *root) {
if (root != NULL) {
inorder(root->left);
printf("%d ", root->data);
inorder(root->right);
}
}
int main() {
struct Node *root = malloc(sizeof(struct Node));
root->data = 10;
root->left = NULL;
root->right = NULL;
inorder(root);
return 0;
}¿Qué es un grafo?
¿Qué es un grafo?
Un grafo es un conjunto de nodos (vértices) conectados mediante aristas.
Los grafos pueden ser:
- Dirigidos - Las aristas tienen dirección.
- No dirigidos - Las aristas no tienen dirección.
Representación de grafos
Representación de grafos
Los grafos se pueden representar mediante:
- Matriz de adyacencia - Un arreglo bidimensional que representa las conexiones.
- Lista de adyacencia - Una lista en la que cada nodo apunta a sus vecinos.
Recorrido de grafos
Recorrido de grafos
Métodos de recorrido habituales:
- Búsqueda en anchura (BFS) - Visita todos los vecinos antes de avanzar a un nivel más profundo.
- Búsqueda en profundidad (DFS) - Explora hasta donde sea posible antes de retroceder.
Resumen
Resumen
En esta lección, ha aprendido:
- Cómo se estructuran los árboles y los grafos.
- Cómo realizar recorridos de árboles.
- Cómo se representan y recorren los grafos.
¡Con esto concluye la sección Estructuras de datos en C!

Preguntas frecuentes
¿La lección «Árboles y grafos» es gratis?
Sí — el texto completo de «Árboles y grafos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C Academy, actualiza a CoddyKit PRO. El curso de C Academy incluye 3 lecciones en total.
¿Qué aprenderé en «Árboles y grafos»?
Explore estructuras de árboles y grafos para representar datos jerárquicos y de redes Practicas C Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar C Academy?
No se requiere experiencia previa. C Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 3.
¿Cuánto tiempo toma la lección «Árboles y grafos»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de C Academy?
Sí. Cada lección de C Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Listas enlazadas
- Pilas y colas
- Árboles y grafos