Eso sería válido, y esta es una optimización razonable. Sin embargo, eso no sería “una sola pasada a través de los bordes” como usted dice. Eso es porque examinarías:
Para trazados de longitud 1: aristas desde el vértice de origen
Para trayectos de longitud 2: aristas desde el vértice de origen y todos sus vértices vecinos
- Si los algoritmos avanzados y las estructuras de datos nunca se utilizan en la industria, ¿por qué aprenderlos?
- ¿Hay alguien que pueda responder esta pregunta?
- ¿Hay sitios web dedicados al aprendizaje de algoritmos y la teoría de los autómatas?
- ¿Cuál es el secreto de escribir buenos algoritmos?
- ¿Qué es el algoritmo LSH Forest?
Para trayectos de longitud 3: aristas desde el vértice de origen, todos sus vértices vecinos y todos los vecinos de los vecinos, …
¿Ves cuál es el patrón? Para cada longitud, vuelve a examinar todos los bordes examinados previamente y luego agrega más. Por lo tanto, no es una sola pasada a través de los bordes.
La forma en que a menudo se implementa Bellman-Ford, se hace aún más optimización. No solo podemos hacer lo que sugirió, sino que también podemos evitar volver a examinar los bordes de los vértices cuyo costo de la fuente no se redujo en la etapa anterior.
Estas son optimizaciones importantes en la práctica, pero no mejoran el rendimiento asintótico en el peor de los casos.