Прежде всего, я прошу прощения за то, что плохо нарисовал график. Очевидно, что веса не масштабируются. Мне сложно придумать алгоритмы для решения нескольких проблем.
Во-первых, я хочу найти все пути, которые занимают 3 «остановки» или меньше от C до C (просто пример ... могут быть любые две вершины). После исследования я обнаружил, что BFS может быть тем, что я ищу для решения этой проблемы. Прав ли я в этом предположении?
Есть два пути с 3 остановками или меньше:
C -> D -> C
C -> E -> B -> C
Я также хочу найти кратчайший путь от A до C (просто пример .. могут быть любые две вершины). Проведя небольшое исследование, я пришел к выводу, что мне следует использовать алгоритм Дейкстры. Прав ли я в этом предположении? Если так, то я видел, что есть разные реализации. Имеет ли значение, использую ли я двоичную кучу, кучу Фибоначчи или очередь?
Спасибо и дайте мне знать, если вам понадобится дополнительная информация!