Algoritmo de búsqueda en amplitud (BFS) con estructura de cola
La búsqueda en amplitud (BFS, por sus siglas en inglés) es un algoritmo fundamental para explorar estructuras de datos como grafos o árboles. Su principio central consiste en visitar todos los vecinos directos de un nodo antes de avanzar al siguiente nivel de profundidad, expandiéndose de manera horizontal como las ondas en el agua.
Contextos d ...
Publicado el 6-11 05:01
Ordenamiento Topológico y Conectividad en Grafos Dirigidos
Fundamentos del Ordenamienot Topológico
El ordenamiento topológico es una secuencia lineal de los vértices de un grafo dirigido acíclico (DAG), tal que para cada arista dirigida u -> v, el vértice u aparece antes que v en la ordenación. Si el grafo contiene ciclos, no es posible obtener un ordenamiento topológico.
Implementación Estándar de ...
Publicado el 6-11 01:30
Resumen de Problemas de Algoritmos para Exámenes de Posgrado (Años Anteriores)
Año 2025
Especialidad Maestría
Problema 1: Diferencia Máxima
Fuente: Luogu P5146. Encontrar la máxima diferencia entre dos elementos donde el menor aparece antes del mayor.
// Código optimizado para lectura
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 1e6 + 10;
ll arr[N];
int main() {
ios::sync_wi ...
Publicado el 6-6 19:22
Algoritmos de Camino Más Corto en Grafos
Camino Más Corto de Fuente Única
Algoritmo de Dijkstra (solo para aristas con pesos positivos, fuente única)
Su lógica se puede entender como ir al nodo más cercano actualmente alcanzable que aún no hemos determinado si es la ruta más corta, y encotnrar su camino más corto.
Leemos todas las aristas y sus pesos, luego inicializamos todas las dis ...
Publicado el 6-4 20:58
Notas de Repaso sobre Union-Find
Implementación básica y aplicaciones de la estructura de datos Union-Find (Conjuntos Disjuntos).
Ejemplo Básico: Union-Find con Compresión de Rutas
Implementación estándar con las operaciones de find y union. Se utiliza compresión de rutas para optimizar las búsquedas.
#include <iostream>
using namespace std;
const int MAX_N = 10010;
int ...
Publicado el 6-3 19:47