From ce9f4591847c6bd2dc6ebaa30fc5d72714e0280c Mon Sep 17 00:00:00 2001 From: Nunigan Date: Tue, 10 Aug 2021 06:37:20 +0200 Subject: new measurements --- buch/papers/multiplikation/problemstellung.tex | 145 ++++++++++++++----------- 1 file changed, 80 insertions(+), 65 deletions(-) (limited to 'buch/papers/multiplikation/problemstellung.tex') diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex index e53b0de..c8ba274 100755 --- a/buch/papers/multiplikation/problemstellung.tex +++ b/buch/papers/multiplikation/problemstellung.tex @@ -14,87 +14,102 @@ Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der S Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhängigkeit zur Inputgrösse \cite{multiplikation:bigo}. $f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$. % Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$ -Als Beispiel: benötigt eine Funktion $g$ $\mathcal{O}\left(n^2 \right)$ Multiplikationen, so wächst $f$ mit $\mathcal{O}\left(n+ n^2 \right)$ nicht wesentlich schneller falls $x\to\infty$. +Als Beispiel: benötigt eine Funktion $g$ $\mathcal{O} (n^2 )$ Multiplikationen, so wächst $f$ mit $\mathcal{O} (n+ n^2 )$ nicht wesentlich schneller falls $x\to\infty$. Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet: \begin{itemize} \item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt \item $f \in \mathcal{O}(n) \rightarrow f$ w\"achst linear - \item $f \in \mathcal{O}\left (n^2 \right ) \rightarrow f$ w\"achst quadratisch + \item $f \in \mathcal{O} (n^2 ) \rightarrow f$ w\"achst quadratisch \item $f \in \mathcal{O}(\log n) \rightarrow f$ w\"achst logarithmisch \item $f \in \mathcal{O}(n \log n) \rightarrow f$ hat super-lineares Wachstum - \item $f \in \mathcal{O}\left (e^n \right ) \rightarrow f$ w\"achst exponentiell + \item $f \in \mathcal{O} (e^n ) \rightarrow f$ w\"achst exponentiell \item usw. \end{itemize} In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden. Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt. -Sch\"on zu erkennen ist, dass Logarithmische Kurven beschr\"ankt sind. + \subsubsection{Beispiel Algorithmen} Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen. -\begin{minipage}{0.4\textwidth} - \begin{algorithm}[H]\footnotesize\caption{} - \label{multiplikation:alg:b1} - \setlength{\lineskip}{7pt} - \begin{algorithmic} - \Function{B1}{$a, b$} - \State \textbf{return} $a+b$ - \EndFunction - \end{algorithmic} - \end{algorithm} - - \begin{algorithm}[H]\footnotesize\caption{} - \setlength{\lineskip}{7pt} - \begin{algorithmic} - \label{multiplikation:alg:linear} - \Function{L}{$\mathbf{a}, \mathbf{b}$,n} - \State $ sum \gets 0$ - \For{$i = 0,1,2 \dots,n$} - \State $ sum \gets sum + A[i] \cdot B[i] $ - \EndFor - - \State \textbf{return} $sum$ - - \EndFunction - \end{algorithmic} - \end{algorithm} -\end{minipage} -\hspace{2cm} -\begin{minipage}{0.4\textwidth} - - \begin{algorithm}[H]\footnotesize\caption{} - \label{multiplikation:alg:b2} - \setlength{\lineskip}{7pt} - \begin{algorithmic} - \Function{B2}{$a, b$} - \State $ x \gets a+b $ - \State $ y \gets a \cdot b $ - \State \textbf{return} $x+y$ - \EndFunction - \end{algorithmic} - \end{algorithm} - - - \begin{algorithm}[H]\footnotesize\caption{} - \label{multiplikation:alg:q1} - \setlength{\lineskip}{7pt} - \begin{algorithmic} - \Function{Q}{$\mathbf{A}, \mathbf{B}$,n} - \State $ sum \gets 0$ - \For{$i = 0,1,2 \dots,n$} - \For{$j = 0,1,2 \dots,n$} - \State $ sum \gets sum + A[i] \cdot B[j] $ - \EndFor - \EndFor - \State \textbf{return} $sum$ - \EndFunction - \end{algorithmic} - \end{algorithm} - -\end{minipage} + +\begin{table}[t] + \begin{tabular}{ll} + \begin{minipage}{0.48\textwidth} + \begin{algorithm}[H]\footnotesize\caption{} + \label{multiplikation:alg:b1} + \setlength{\lineskip}{7pt} + \begin{algorithmic} + \Function{B1}{$a, b$} + \State \textbf{return} $a+b$ + \EndFunction + \State + \State + \end{algorithmic} + \end{algorithm} + \end{minipage} + & + \begin{minipage}{0.48\textwidth} + \begin{algorithm}[H]\footnotesize\caption{} + \label{multiplikation:alg:b2} + \setlength{\lineskip}{7pt} + \begin{algorithmic} + \Function{B2}{$a, b$} + \State $ x \gets a+b $ + \State $ y \gets a \cdot b $ + \State \textbf{return} $x+y$ + \EndFunction + \end{algorithmic} + \end{algorithm} + + \end{minipage} + \end{tabular} +\end{table} + +\begin{table} + \begin{tabular}[t]{ll} + \begin{minipage}{0.48\textwidth} + \begin{algorithm}[H]\footnotesize\caption{} + \setlength{\lineskip}{7pt} + \begin{algorithmic} + \label{multiplikation:alg:linear} + \Function{L}{$\mathbf{a}, \mathbf{b}$,n} + \State $ sum \gets 0$ + \For{$i = 0,1,2 \dots,n$} + \State $ sum \gets sum + A[i] \cdot B[i] $ + \EndFor + + \State \textbf{return} $sum$ + + \EndFunction + \State + \State + \end{algorithmic} + \end{algorithm} + \end{minipage} + & + \begin{minipage}{0.48\textwidth} + \begin{algorithm}[H]\footnotesize\caption{} + \label{multiplikation:alg:q1} + \setlength{\lineskip}{7pt} + \begin{algorithmic} + \Function{Q}{$\mathbf{A}, \mathbf{B}$,n} + \State $ sum \gets 0$ + \For{$i = 0,1,2 \dots,n$} + \For{$j = 0,1,2 \dots,n$} + \State $ sum \gets sum + A[i] \cdot B[j] $ + \EndFor + \EndFor + \State \textbf{return} $sum$ + \EndFunction + \end{algorithmic} + \end{algorithm} + \end{minipage} + \end{tabular} +\end{table} \paragraph{Beschr\"ankter Algorithmus} @@ -111,7 +126,7 @@ Die \texttt{for}-Schleife wird $n$-mal durchlaufen und f\"uhrt deshalb zu $\math \paragraph{Quadratischer Algorithmus} Der Algorithmus \ref{multiplikation:alg:q1} hat ein quadratisches Verhalten. -Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchlaufen und f\"uhrt deshalb zu $\mathcal{O}\left(n^2\right)$. +Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchlaufen und f\"uhrt deshalb zu $\mathcal{O} (n^2 )$. \begin{figure} -- cgit v1.2.1 From 713ef9bbfa79eb2ae2b821da26271cdeea58834c Mon Sep 17 00:00:00 2001 From: Nunigan Date: Tue, 17 Aug 2021 07:41:22 +0200 Subject: update --- buch/papers/multiplikation/problemstellung.tex | 30 ++++++++++++++------------ 1 file changed, 16 insertions(+), 14 deletions(-) (limited to 'buch/papers/multiplikation/problemstellung.tex') diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex index c8ba274..a98d0e9 100755 --- a/buch/papers/multiplikation/problemstellung.tex +++ b/buch/papers/multiplikation/problemstellung.tex @@ -7,15 +7,15 @@ \rhead{Problemstellung} Wegen der breiten Anwendung der Matrizenmultiplikation ist eine effiziente L\"osung dieser Operation von grosser Bedeutung. Das Ziel dieses Papers ist, verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen. -Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der Standard Algorithmus l\"osen. +Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der Standardalgorithmus l\"osen. \subsection{Big $\mathcal{O}$ Notation} \label{muliplikation:sec:bigo} Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhängigkeit zur Inputgrösse \cite{multiplikation:bigo}. $f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$. -% Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$ -Als Beispiel: benötigt eine Funktion $g$ $\mathcal{O} (n^2 )$ Multiplikationen, so wächst $f$ mit $\mathcal{O} (n+ n^2 )$ nicht wesentlich schneller falls $x\to\infty$. -Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet: +Dies ist gegeben, wenn es für $f \in \mathcal{O}(n^k)$ eine Konstante $C$ gibt, mit $f(n) \leq Cn^k$. +% Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$. +Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet: \begin{itemize} \item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt \item $f \in \mathcal{O}(n) \rightarrow f$ w\"achst linear @@ -26,6 +26,8 @@ Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet: \item usw. \end{itemize} +Konstanten werden nicht beachtet, eine Laufzeit von $\mathcal{O}(4n^2)$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$. + In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden. Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt. @@ -50,7 +52,7 @@ Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomple \State \end{algorithmic} \end{algorithm} - \end{minipage} + \end{minipage} & \begin{minipage}{0.48\textwidth} \begin{algorithm}[H]\footnotesize\caption{} @@ -64,13 +66,13 @@ Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomple \EndFunction \end{algorithmic} \end{algorithm} - + \end{minipage} \end{tabular} \end{table} \begin{table} - \begin{tabular}[t]{ll} + \begin{tabular}[t]{ll} \begin{minipage}{0.48\textwidth} \begin{algorithm}[H]\footnotesize\caption{} \setlength{\lineskip}{7pt} @@ -81,15 +83,15 @@ Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomple \For{$i = 0,1,2 \dots,n$} \State $ sum \gets sum + A[i] \cdot B[i] $ \EndFor - + \State \textbf{return} $sum$ - + \EndFunction \State \State \end{algorithmic} \end{algorithm} - \end{minipage} + \end{minipage} & \begin{minipage}{0.48\textwidth} \begin{algorithm}[H]\footnotesize\caption{} @@ -112,10 +114,10 @@ Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomple \end{table} \paragraph{Beschr\"ankter Algorithmus} +Algorithmus \ref{multiplikation:alg:b1} ist ein Beispiel mit beschränkter Laufzeit $\mathcal{O}(1)$ +Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen Einfluss auf die Laufzeit. -Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmus \ref{multiplikation:alg:b1} entnommen werden. Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen Einfluss auf die Laufzeit. - -Konstanten werden nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$. +Wie erwähnt, werden konstanten nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$. \paragraph{Linearer Algorithmus} @@ -132,6 +134,6 @@ Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchlaufen und f\"uhrt \begin{figure} \center \includegraphics[]{papers/multiplikation/images/bigo} - \caption{Verschiedene Laufzeiten} + \caption{Laufzeiten von verschiedensten Zeitkomplexitäten. Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.} \label{multiplikation:fig:bigo} \end{figure} -- cgit v1.2.1 From b8b22fc376e14491a556daeacb5e8e5d216a8251 Mon Sep 17 00:00:00 2001 From: Nunigan Date: Thu, 19 Aug 2021 06:08:48 +0200 Subject: update --- buch/papers/multiplikation/problemstellung.tex | 1 - 1 file changed, 1 deletion(-) (limited to 'buch/papers/multiplikation/problemstellung.tex') diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex index a98d0e9..b8c4142 100755 --- a/buch/papers/multiplikation/problemstellung.tex +++ b/buch/papers/multiplikation/problemstellung.tex @@ -27,7 +27,6 @@ Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet: \end{itemize} Konstanten werden nicht beachtet, eine Laufzeit von $\mathcal{O}(4n^2)$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$. - In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden. Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt. -- cgit v1.2.1 From 0c073915585da20db52db82958d50e159559e5c8 Mon Sep 17 00:00:00 2001 From: Nunigan Date: Fri, 20 Aug 2021 08:50:43 +0200 Subject: update --- buch/papers/multiplikation/problemstellung.tex | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'buch/papers/multiplikation/problemstellung.tex') diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex index b8c4142..a9aeda0 100755 --- a/buch/papers/multiplikation/problemstellung.tex +++ b/buch/papers/multiplikation/problemstellung.tex @@ -3,13 +3,12 @@ % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % -\section{Problemstellung} +\section{Laufzeiten von Algorithmen} \rhead{Problemstellung} -Wegen der breiten Anwendung der Matrizenmultiplikation ist eine effiziente L\"osung dieser Operation von grosser Bedeutung. +Wegen der breiten Anwendung der Matrizenmultiplikation ist eine effiziente Ausführung dieser Operation von grosser Bedeutung. Das Ziel dieses Papers ist, verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen. Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der Standardalgorithmus l\"osen. -\subsection{Big $\mathcal{O}$ Notation} \label{muliplikation:sec:bigo} Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhängigkeit zur Inputgrösse \cite{multiplikation:bigo}. $f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$. @@ -26,15 +25,15 @@ Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet: \item usw. \end{itemize} -Konstanten werden nicht beachtet, eine Laufzeit von $\mathcal{O}(4n^2)$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$. +Konstanten werden nicht beachtet, eine Laufzeit von $4n^2$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$. In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden. -Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt. +Bei einer doppelt logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven abbgebildet. \subsubsection{Beispiel Algorithmen} -Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen. +Es folgen einige Beispiele von Algorithmen, welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen. \begin{table}[t] -- cgit v1.2.1 From 27bef650fb02f20f0f0a0980e810363583115cd9 Mon Sep 17 00:00:00 2001 From: Nunigan Date: Sat, 21 Aug 2021 14:54:03 +0200 Subject: update multiplikation --- buch/papers/multiplikation/problemstellung.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/papers/multiplikation/problemstellung.tex') diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex index a9aeda0..604ea36 100755 --- a/buch/papers/multiplikation/problemstellung.tex +++ b/buch/papers/multiplikation/problemstellung.tex @@ -27,7 +27,7 @@ Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet: Konstanten werden nicht beachtet, eine Laufzeit von $4n^2$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$. In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden. -Bei einer doppelt logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven abbgebildet. +Bei einer doppelt logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven abgebildet. -- cgit v1.2.1 From bf1d8fd6cf8b1a40bb0a621fda1070ddefba277b Mon Sep 17 00:00:00 2001 From: Nunigan Date: Mon, 23 Aug 2021 11:00:26 +0200 Subject: update --- buch/papers/multiplikation/problemstellung.tex | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'buch/papers/multiplikation/problemstellung.tex') diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex index 604ea36..b3e0ab3 100755 --- a/buch/papers/multiplikation/problemstellung.tex +++ b/buch/papers/multiplikation/problemstellung.tex @@ -4,17 +4,17 @@ % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % \section{Laufzeiten von Algorithmen} -\rhead{Problemstellung} +\rhead{Laufzeiten von Algorithmen} Wegen der breiten Anwendung der Matrizenmultiplikation ist eine effiziente Ausführung dieser Operation von grosser Bedeutung. Das Ziel dieses Papers ist, verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen. Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der Standardalgorithmus l\"osen. \label{muliplikation:sec:bigo} -Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhängigkeit zur Inputgrösse \cite{multiplikation:bigo}. +Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Relation zur Inputgrösse \cite{multiplikation:bigo}. $f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$. Dies ist gegeben, wenn es für $f \in \mathcal{O}(n^k)$ eine Konstante $C$ gibt, mit $f(n) \leq Cn^k$. % Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$. -Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet: +Vereinfacht werden f\"ur Algorithmen die folgende Sprechweisen verwendet: \begin{itemize} \item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt \item $f \in \mathcal{O}(n) \rightarrow f$ w\"achst linear @@ -25,13 +25,13 @@ Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet: \item usw. \end{itemize} -Konstanten werden nicht beachtet, eine Laufzeit von $4n^2$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$. +Konstanten werden nicht beachtet, eine Laufzeit von $4n^2$ führt, für $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$. In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden. Bei einer doppelt logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven abgebildet. -\subsubsection{Beispiel Algorithmen} +\subsubsection{Beispielalgorithmen} Es folgen einige Beispiele von Algorithmen, welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen. @@ -115,7 +115,7 @@ Es folgen einige Beispiele von Algorithmen, welche zu einer bestimmten Zeitkompl Algorithmus \ref{multiplikation:alg:b1} ist ein Beispiel mit beschränkter Laufzeit $\mathcal{O}(1)$ Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen Einfluss auf die Laufzeit. -Wie erwähnt, werden konstanten nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$. +Wie erwähnt werden Konstanten nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$. \paragraph{Linearer Algorithmus} @@ -132,6 +132,6 @@ Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchlaufen und f\"uhrt \begin{figure} \center \includegraphics[]{papers/multiplikation/images/bigo} - \caption{Laufzeiten von verschiedensten Zeitkomplexitäten. Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.} + \caption{Laufzeiten von verschiedensten Zeitkomplexitäten. Bei einer doppelt logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.} \label{multiplikation:fig:bigo} \end{figure} -- cgit v1.2.1 From 583925fe5661c68f4ae90712c9d697618933ee6c Mon Sep 17 00:00:00 2001 From: Nunigan Date: Tue, 24 Aug 2021 15:34:33 +0200 Subject: typos --- buch/papers/multiplikation/problemstellung.tex | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'buch/papers/multiplikation/problemstellung.tex') diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex index b3e0ab3..879b210 100755 --- a/buch/papers/multiplikation/problemstellung.tex +++ b/buch/papers/multiplikation/problemstellung.tex @@ -11,10 +11,10 @@ Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der S \label{muliplikation:sec:bigo} Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Relation zur Inputgrösse \cite{multiplikation:bigo}. -$f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$. -Dies ist gegeben, wenn es für $f \in \mathcal{O}(n^k)$ eine Konstante $C$ gibt, mit $f(n) \leq Cn^k$. +$f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$, wenn $x \rightarrow \infty$. +Dies ist gegeben, falls es für $f \in \mathcal{O}(n^k)$ eine Konstante $C$ gibt, mit $f(n) \leq Cn^k$. % Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$. -Vereinfacht werden f\"ur Algorithmen die folgende Sprechweisen verwendet: +Vereinfacht werden f\"ur Algorithmen die folgenden Sprechweisen verwendet: \begin{itemize} \item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt \item $f \in \mathcal{O}(n) \rightarrow f$ w\"achst linear @@ -64,13 +64,7 @@ Es folgen einige Beispiele von Algorithmen, welche zu einer bestimmten Zeitkompl \EndFunction \end{algorithmic} \end{algorithm} - - \end{minipage} - \end{tabular} -\end{table} - -\begin{table} - \begin{tabular}[t]{ll} + \end{minipage} \\ \begin{minipage}{0.48\textwidth} \begin{algorithm}[H]\footnotesize\caption{} \setlength{\lineskip}{7pt} @@ -111,6 +105,12 @@ Es folgen einige Beispiele von Algorithmen, welche zu einer bestimmten Zeitkompl \end{tabular} \end{table} +%\begin{table} +% \begin{tabular}[t]{ll} + +% \end{tabular} +%\end{table} + \paragraph{Beschr\"ankter Algorithmus} Algorithmus \ref{multiplikation:alg:b1} ist ein Beispiel mit beschränkter Laufzeit $\mathcal{O}(1)$ Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen Einfluss auf die Laufzeit. -- cgit v1.2.1