Dijkstra (iti0140)

Allikas: Lambda

Ülesanne

Implementeeri iseseisvalt Dijkstra algoritm ([1]). Aluseks võib võtta vikipeedias näidatud pseudokoodi. (Optimeerimine ei ole hetkel tähtis. Tähtis on, et algoritmi tulemus oleks sama kui networkX enda implementatsioonis).

Kontrolli oma lahenduse kattuvust NetworkX-s realiseeritud algoritmiga (dijkstra_path(G, source, target, weight='weight')) juhuslikel graafidel (võib kasutada eelmises tunnis antud generate_graph() või siis kasutada NetworkX juhuslike graafide genereerimise algoritmi)

Huvi korral võib mõõta aega ja võrrelda enda ja networkX algoritmide kiiruse erinevust (näete oma algoritmi efektiivsust "optimeeritud" algoritmiga).