A menudo se dice (por ejemplo, en Wikipedia ) que el tiempo de ejecución de la búsqueda de amplitud primero (BFS) en un gráfico es . Sin embargo, cualquier gráfico conectado tiene e, incluso en un gráfico no conectado, BFS nunca mirará un vértice fuera del componente que contiene el vértice de inicio. Ese componente contiene como máximo bordes, por lo que contiene como máximo vértices, y esos son los únicos que visitará el algoritmo.
Esto significa que , entonces ¿por qué no decimos que el tiempo de ejecución es solo ?
Esto surgió en los comentarios sobre una pregunta sobre el tiempo de ejecución del algoritmo de Disjkstra .
algorithm-analysis
search-algorithms
David Richerby
fuente
fuente
Respuestas:
BFS generalmente se describe de manera similar a lo siguiente (de Wikipedia ).
El problema es algo sutil: ¡se esconde en la línea 3! La pregunta es, ¿qué estructura de datos vamos a utilizar para almacenar qué vértices se han descubierto?
false
fuente