Kann das sein daß der Algo nicht richtig funzt bzw. die Elemente nicht die Kanten sind? Als Ergebnis müßte hier 1 2 3 4 5 o.ä. rauskommen, also ein Knotenabstand von 1.
Ich habe leider keine Delphi/Lazarus installiert, kann es also nicht ausprobieren.
Vielleicht kannst du mal die Zwischenergebnisse und Ergebnis für eine (nicht optimale) Beispielmatrix ausgeben, also für jeden Schritt jeweils den aktuell den betrachteten Knoten, dessen Nachbarn (altes Label), usw.