clc clear time = 0; licznik = 1; czas_calosci = 0; for n = 5:5:100 % Pętla wybierająca ilość węzłów z krokiem 5 for l = 1:1:30 % Wyznaczanie prawidłowej średniej - utworzenie krawędzi W = 1+ceil(rand(1)*100 ) % Losowanie wag dla powstałych węzłów for i = 1:n for j = 1:n if i==j % Jezeli obie wartości są równe.. W(i, j) = 0; % Przerwanie pętli jeśli obie wartości sa takie same end end end s = 1; % Wierzchołek startowy t = 5; % Wierzchołek końcowy newlabel = 0; % Zmienna pomocnicza przechowujaca cechę tymczasową for v = 1:n dist(v) = inf % Ustawienie odległości między wierzchołkami na nieskończoność final(v) = false % Ustawienie drogi na drogę tymczasową - false pred(v) = -1; % Ustawienie poprzedniego wierzchołka na -1 end dist(s)=0; % Odległość od początku do danego wierzchołka final(s) = true; % Ustawienie drogi na drogę stałą - true recent = s; % Zmienna pomocnicza oznaczająca poprzedni wierzchołek tic; % Rozpoczęcie odliczania czasu while final(t)==false % Pętla działająca dopóki algorytm uznaje drogę tymczasową dla ostatniego wierzchołka for v = 1:n newlabel=dist(recent)+W(recent, v); % Przypisanie odległości poprzednich wartości if newlabel