Un algoritmo de inundación es un algoritmo para distribuir material a cada parte de un grafo . El nombre deriva del concepto de inundación por inundación . Los algoritmos de inundación se utilizan en redes informáticas y gráficos . Los algoritmos de inundación también son útiles para resolver muchos problemas matemáticos, incluidos los problemas de laberinto y muchos problemas de teoría de grafos .
Se pueden aplicar diferentes algoritmos de inundación para diferentes problemas y ejecutarse con diferentes complejidades de tiempo . Por ejemplo, el algoritmo de relleno de inundación es un algoritmo simple pero relativamente robusto que funciona para geometrías intrincadas y puede determinar qué parte del área (objetivo) está conectada a un nodo (fuente) dado en una matriz multidimensional , y se generaliza trivialmente a estructuras de grafos arbitrarias. Si, en cambio, hay varios nodos de origen, no hay obstrucciones en la geometría representada en la matriz multidimensional y uno desea segmentar el área en función de cuál de los nodos de origen está más cerca de los nodos de destino, mientras que el algoritmo de relleno de inundación aún se puede usar, el algoritmo de inundación de salto es potencialmente mucho más rápido ya que tiene una complejidad de tiempo menor. Sin embargo, a diferencia del algoritmo de relleno de inundación, el algoritmo de inundación de salto no se puede generalizar trivialmente a grafos no estructurados.