Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- clc;
- clear;
- licznik = 1;
- for n=5:5:100
- suma = 0;
- for i=1:1:30
- licz = 1;
- for a=1:1:n
- for j=1:1:n
- if (a ~= j) warunek acykliczności
- W(a, j) = 20+ceil(50*rand); generator wag
- end
- end
- end
- tic zegar
- P=zeros(n,n); tworzenie macierzy z zer
- for i=1:1:n
- for j=1:1:n
- if W(i,j)~=inf
- P(i,j)=i; macierz dróg
- end
- end
- end
- %ALGORYTM FLOYDA
- for l=1:1:n
- for i=1:1:n
- if W(i,l)~=inf
- for j=1:1:n
- if W(i,j)>(W(i,l)+W(l,j))
- P(i,j)=P(l,j);
- end
- W(i,j)=min(W(i,j),W(i,l)+W(l,j));
- end
- end
- end
- end
- suma = suma + toc;
- end
- ilosc(licznik)=n;
- srednia(licznik) = suma/30;
- A=(ilosc(1)^3)/srednia(1);
- zlozonosc(licznik)=(n*n*n)/A;
- licznik = licznik + 1;
- end
- plot(ilosc,zlozonosc,'-ro')
- title('Wykres złożoności obliczeniowej');
- xlabel('Ilość węzłów w grafie');
- ylabel('Czas');
- hold on
- plot(ilosc,srednia, '-s')
- legend('złożoność obliczeniowa algorytmu','czas trwaniaalgorytmu','Location','northwest');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement