1
0
This commit is contained in:
Ruben
2019-05-24 10:28:02 +02:00
parent 408adf7949
commit ff536314b1

View File

@@ -165,7 +165,7 @@
\subsection{Doorlooplijnalgoritme $O(N^2)$} \subsection{Doorlooplijnalgoritme $O(N^2)$}
Theoretisch zagen we dat bij het gewone doorlooplijnalgoritme de worst-case tijdscomplexiteit kwadratisch was. De gemiddelde tijdscomplexiteit is echter veel beter dan dat, wat tabel \ref{tab2} dan ook bevestigd. De gemiddelde ratio van onze testwaarden is $1.64$ en die van $N*log_2(N)$ is $2.4$. De gemiddelde doubling ratio van $N^2$ is dan weer $4$. De ratio is zelfs lager dan een $Nlog_2(N)$-functie. Hieruit kunnen we besluiten dat de doubling ratio van de testwaarden veel meer aansluit bij die van $N*log_2(N)$ dan bij een kwadratisch verband. Theoretisch zagen we dat bij het gewone doorlooplijnalgoritme de worst-case tijdscomplexiteit kwadratisch was. De gemiddelde tijdscomplexiteit is echter veel beter dan dat, wat tabel \ref{tab2} dan ook bevestigd. De gemiddelde ratio van onze testwaarden is $1.64$ en die van $Nlog_2(N)$ is $2.4$. De gemiddelde doubling ratio van $N^2$ is dan weer $4$. De ratio is zelfs lager dan een $Nlog_2(N)$-functie. Hieruit kunnen we besluiten dat de doubling ratio van de testwaarden veel meer aansluit bij die van $Nlog_2(N)$ dan bij een kwadratisch verband.
\begin{figure}[H] \begin{figure}[H]
\centering \centering
@@ -175,12 +175,12 @@
\end{figure} \end{figure}
\subsection{Doorlooplijnalgoritme $O((N+S)log_2(N))$} \subsection{Doorlooplijnalgoritme $O((N+S)log_2(N))$}
Om de rekentijd van het derde algoritme na te gaan, maken we opnieuw gebruik van een doubling ratio experiment. We gaan na wat de doubling ratio van de verwachte complexiteit is en wat de doubling ratio van de testwaarden is. In dit geval zien we in de derde kolom van tabel \ref{tab3} de doubling ratio van onze testwaarden en in de vijde kolom de doubling ratio van $N*log_2(N)$. Het gemiddelde van de ratio's van onze testwaarden is $2.33$ en dat van $N*log_2(N)$ is $3.06$, wat op een tragere stijging van onze testwaarden dan de $Nlog_2(N)$-functie wijst. Om de rekentijd van het derde algoritme na te gaan, maken we opnieuw gebruik van een doubling ratio experiment. We gaan na wat de doubling ratio van de verwachte complexiteit is en wat de doubling ratio van de testwaarden is. In dit geval zien we in de derde kolom van tabel \ref{tab3} de doubling ratio van onze testwaarden en in de vijde kolom de doubling ratio van $Nlog_2(N)$. Het gemiddelde van de ratio's van onze testwaarden is $2.33$ en dat van $Nlog_2(N)$ is $3.06$, wat op een tragere stijging van onze testwaarden dan de $Nlog_2(N)$-functie wijst.
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[scale=.6]{doorloopeff_doubling.png} \includegraphics[scale=.6]{doorloopeff_doubling.png}
\caption{Tabel met de doubling ratio van het efficientere doorlooplijnalgoritme.} \caption{Tabel met de doubling ratio van het efficiëntere doorlooplijnalgoritme.}
\label{tab3} \label{tab3}
\end{figure} \end{figure}