006
28.12.2006, 23:09 Uhr
ao
(Operator)
|
Nun ja, es spricht schon einiges dafür, den ganzen Algorithmus in einer Funktion zusammenzuhalten, zumal er nicht sehr lang ist.
Was mich viel mehr stört, ist diese enorme Schachtelungstiefe, siehe Posting 002. Das sind drei Funktionsaufrufe ineinander, d.h. das Ergebnis der einen Funktion ist Argument der nächsten, und das letzte Ergebnis wird benutzt, um ein Array zu indizieren. Es gibt keinerlei Plausibilitätsprüfungen, zumindest sehe ich keine. Hast du wirklich im Griff, was da am Ende der Kette rausfällt? Kannst du sicher sein, dass es keine Speicherfehler durch ungültige Indizes gibt? Wie debuggst du das?
BTW, ich kenne Bellman-Ford nicht, verstehe nichts von Graphentheorie, bin noch nicht mal Mathematiker und sollte deswegen, was den Algorithmus selber angeht, wohl besser mein Maul halten. Trotzdem, wenn ich das richtig überfliege, berechnest du die Distanzen von jedem Knoten zu jedem anderen (also m * n Stück) und gibst dann nur eine einzige dieser Distanzen zurück, richtig? Muss das so sein? Ist das nicht ne ziemliche Verschwendung, m*n Ergebnisse zu berechnen, wenn nur eins davon gefragt ist?
Und noch ne Frage: Warum ist das Ergebnis des Algorithmus ein String?
ao Dieser Post wurde am 29.12.2006 um 01:11 Uhr von ao editiert. |