Wykorzystanie algorytmu Floyd-Warshall do policzenia liczby ścieżek między 2 wierzchołkami

Biorąc pod uwagę ukierunkowany nieważony wykres acyliczny, staram się zaadaptować algorytm Floyd-Warshall, aby policzyć liczbę ścieżek między 2 wierzchołkami. Mój kod wygląda obecnie tak:

dla wszystkich k w 1 do n dla wszystkich i w 1 do n dla wszystkich j w 1 do n Aij = Aij + (Aik * Akij).

Dlatego zamiast sprawdzać i zamieniać odległość minimalną, wykonuję następujące czynności:

Liczba ścieżek między (i,j) bezk + (Liczba ścieżek zi dok * Liczba ścieżek zk * j )

Moja ostatnia tablica powinna mieć liczbę ścieżek między dowolnymi 2 wierzchołkami.

Nie jestem w stanie udowodnić, że nie daje mi to liczby prostych ścieżek między 2 wierzchołkami, ale nie ma żadnych sugestii, aby użyć tego podejścia gdzie indziej.

Czy ktoś może podać przykład, w którym to się nie powiedzie?

PS: To nie jest moja praca domowa, ale tylko ćwiczenie programistyczne, które podjąłem.

questionAnswers(2)

yourAnswerToTheQuestion