https://de.wikipedia.org/w/index.php?action=history&feed=atom&title=Datenstromalgorithmus Datenstromalgorithmus - Versionsgeschichte 2025-06-06T14:58:47Z Versionsgeschichte dieser Seite in Wikipedia MediaWiki 1.45.0-wmf.4 https://de.wikipedia.org/w/index.php?title=Datenstromalgorithmus&diff=224610142&oldid=prev Boehm: typog 2022-07-18T21:49:57Z <p>typog</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 18. Juli 2022, 23:49 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 9:</td> <td colspan="2" class="diff-lineno">Zeile 9:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Man modelliert die kontinuierlich anfallenden Daten als Strom – eine Folge von Eingabezeichen, deren Länge häufig unbekannt ist, aber als sehr groß angenommen wird.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Man modelliert die kontinuierlich anfallenden Daten als Strom – eine Folge von Eingabezeichen, deren Länge häufig unbekannt ist, aber als sehr groß angenommen wird.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Ein den Strom verarbeitender Algorithmus darf nur Zeichen für Zeichen des Stromes lesen, wahlfreier Zugriff (random access), d.&amp;nbsp;h. ein <del style="font-weight: bold; text-decoration: none;">"Springen"</del> auf den Eingabezeichen, ist nicht erlaubt.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Ein den Strom verarbeitender Algorithmus darf nur Zeichen für Zeichen des Stromes lesen, wahlfreier Zugriff (random access), d.&amp;nbsp;h. ein <ins style="font-weight: bold; text-decoration: none;">„Springen“</ins> auf den Eingabezeichen, ist nicht erlaubt.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Im Datenstromszenario werden wegen der Menge der anfallenden Daten im Wesentlichen zwei Effizienzforderungen gestellt: Die Speicherplatzkomplexität des Datenstromalgorithmus soll sublinear, idealerweise [[Logarithmus|logarithmisch]] oder polylogarithmisch sein, ebenso wie die Rechenzeit ''pro Eingabezeichen''.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Im Datenstromszenario werden wegen der Menge der anfallenden Daten im Wesentlichen zwei Effizienzforderungen gestellt: Die Speicherplatzkomplexität des Datenstromalgorithmus soll sublinear, idealerweise [[Logarithmus|logarithmisch]] oder polylogarithmisch sein, ebenso wie die Rechenzeit ''pro Eingabezeichen''.</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Zeile 26:</td> <td colspan="2" class="diff-lineno">Zeile 26:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Fehlende Zahl ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Fehlende Zahl ===</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Sei &lt;math&gt;\pi&lt;/math&gt; eine [[Permutation]] der [[Menge (Mathematik)|Zahlenmenge]] &lt;math&gt;\{1, <del style="font-weight: bold; text-decoration: none;">...</del>, n\}&lt;/math&gt; mit einem fehlenden Element &lt;math&gt;s&lt;/math&gt;.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Sei &lt;math&gt;\pi&lt;/math&gt; eine [[Permutation]] der [[Menge (Mathematik)|Zahlenmenge]] &lt;math&gt;\{1, <ins style="font-weight: bold; text-decoration: none;">\dots</ins>, n\}&lt;/math&gt; mit einem fehlenden Element &lt;math&gt;s&lt;/math&gt;.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Eine einfache Methode zur Bestimmung der fehlenden Zahl wäre, alle Zahlen zu sammeln, zu [[Sortierverfahren|sortieren]] und diese geordnete [[Menge (Mathematik)|Menge]] dann der Reihe nach auf das fehlende Element zu durchsuchen. Dazu müssten aber wie beschrieben alle Zahlen gespeichert werden. Der Speicherverbrauch dieses [[Algorithmus]] beträgt dann &lt;math&gt;n \cdot 4&lt;/math&gt; Bytes, wenn angenommen wird, dass jede Zahl als 32-Bit [[Integer (Datentyp)|Integer]] gespeichert wird. So müsste man bspw. für &lt;math&gt;n = 1.000.000.000&lt;/math&gt; ca. 3,7 GB speichern. Um eine angemessene Performanz zu erreichen, müssten dabei diese Daten im Arbeitsspeicher abgelegt werden, doch dies ist aufgrund des großen Datenvolumens bei den meisten PCs nicht möglich. Somit müsste auf die Festplatte zurückgegriffen werden, was jedoch diesen Algorithmus extrem verlangsamt.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Eine einfache Methode zur Bestimmung der fehlenden Zahl wäre, alle Zahlen zu sammeln, zu [[Sortierverfahren|sortieren]] und diese geordnete [[Menge (Mathematik)|Menge]] dann der Reihe nach auf das fehlende Element zu durchsuchen. Dazu müssten aber wie beschrieben alle Zahlen gespeichert werden. Der Speicherverbrauch dieses [[Algorithmus]] beträgt dann &lt;math&gt;n \cdot 4&lt;/math&gt; Bytes, wenn angenommen wird, dass jede Zahl als 32-Bit [[Integer (Datentyp)|Integer]] gespeichert wird. So müsste man bspw. für &lt;math&gt;n = 1.000.000.000&lt;/math&gt; ca. 3,7 GB speichern. Um eine angemessene Performanz zu erreichen, müssten dabei diese Daten im Arbeitsspeicher abgelegt werden, doch dies ist aufgrund des großen Datenvolumens bei den meisten PCs nicht möglich. Somit müsste auf die Festplatte zurückgegriffen werden, was jedoch diesen Algorithmus extrem verlangsamt.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Wären alle Zahlen &lt;math&gt;1, <del style="font-weight: bold; text-decoration: none;">...</del>, n&lt;/math&gt; im Datenstrom enthalten, so wäre die Summe der Elemente des Stromes gemäß der [[Gaußsche Summenformel|Gaußschen Summenformel]]<del style="font-weight: bold; text-decoration: none;"> </del>&lt;math&gt;\sum_{i=1}^{n} i = \frac{n(n + 1)}{2}&lt;/math&gt;.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Wären alle Zahlen &lt;math&gt;1, <ins style="font-weight: bold; text-decoration: none;">\dots</ins>, n&lt;/math&gt; im Datenstrom enthalten, so wäre die Summe der Elemente des Stromes gemäß der [[Gaußsche Summenformel|Gaußschen Summenformel]]</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">:</ins>&lt;math&gt;\sum_{i=1}^{n} i = \frac{n(n + 1)}{2}&lt;/math&gt;.</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Bildet man daher die Summe der im Strom enthaltenen &lt;math&gt;n-1&lt;/math&gt; Elemente in &lt;math&gt;\pi&lt;/math&gt;, so kann man nach Lesen der gesamten Eingabe die gesuchte Zahl &lt;math&gt;s&lt;/math&gt; mit<del style="font-weight: bold; text-decoration: none;"> </del>&lt;math&gt;s = \frac{n(n + 1)}{2} - \sum{\pi}&lt;/math&gt;<del style="font-weight: bold; text-decoration: none;"> </del>bestimmen.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Bildet man daher die Summe der im Strom enthaltenen &lt;math&gt;n-1&lt;/math&gt; Elemente in &lt;math&gt;\pi&lt;/math&gt;, so kann man nach Lesen der gesamten Eingabe die gesuchte Zahl &lt;math&gt;s&lt;/math&gt; mit</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">:</ins>&lt;math&gt;s = \frac{n(n + 1)}{2} - \sum{\pi}&lt;/math&gt;</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>bestimmen.</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Dieser Algorithmus muss zur Berechnung der Summe und zur anschließenden Bestimmung von &lt;math&gt;s&lt;/math&gt; nur eine Zahl speichern und der Speicherplatz beträgt damit nur O(log<del style="font-weight: bold; text-decoration: none;"> </del>n). Er ist damit ganz offensichtlich effizienter.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Dieser Algorithmus muss zur Berechnung der Summe und zur anschließenden Bestimmung von &lt;math&gt;s&lt;/math&gt; nur eine Zahl speichern und der Speicherplatz beträgt damit nur<ins style="font-weight: bold; text-decoration: none;"> &lt;math&gt;\mathcal</ins> O(<ins style="font-weight: bold; text-decoration: none;">\</ins>log<ins style="font-weight: bold; text-decoration: none;">(</ins>n)<ins style="font-weight: bold; text-decoration: none;">)&lt;/math&gt;</ins>. Er ist damit ganz offensichtlich effizienter.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Siehe auch ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Siehe auch ==</div></td> </tr> </table> Boehm https://de.wikipedia.org/w/index.php?title=Datenstromalgorithmus&diff=207555831&oldid=prev Aka: /* Weblinks */ https 2021-01-12T14:52:17Z <p><span class="autocomment">Weblinks: </span> https</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 12. Januar 2021, 16:52 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 38:</td> <td colspan="2" class="diff-lineno">Zeile 38:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Weblinks ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Weblinks ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* [<del style="font-weight: bold; text-decoration: none;">http</del>://<del style="font-weight: bold; text-decoration: none;">athos</del>.rutgers.edu/~muthu/stream-1-1.ps "Data Streams: Algorithms and Applications" von S. Muthukrishnan (Postscript)]</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* [<ins style="font-weight: bold; text-decoration: none;">https</ins>://<ins style="font-weight: bold; text-decoration: none;">www.cs</ins>.rutgers.edu/~muthu/stream-1-1.ps "Data Streams: Algorithms and Applications" von S. Muthukrishnan (Postscript)]</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Kategorie:Algorithmus]]</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Kategorie:Algorithmus]]</div></td> </tr> </table> Aka https://de.wikipedia.org/w/index.php?title=Datenstromalgorithmus&diff=181911158&oldid=prev Aka: Halbgeviertstrich 2018-10-18T15:25:05Z <p>Halbgeviertstrich</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 18. Oktober 2018, 17:25 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 7:</td> <td colspan="2" class="diff-lineno">Zeile 7:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Mathematische Sichtweise und Effizienzanforderungen ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Mathematische Sichtweise und Effizienzanforderungen ==</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Man modelliert die kontinuierlich anfallenden Daten als Strom <del style="font-weight: bold; text-decoration: none;">-</del> eine Folge von Eingabezeichen, deren Länge häufig unbekannt ist, aber als sehr groß angenommen wird.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Man modelliert die kontinuierlich anfallenden Daten als Strom <ins style="font-weight: bold; text-decoration: none;">–</ins> eine Folge von Eingabezeichen, deren Länge häufig unbekannt ist, aber als sehr groß angenommen wird.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein den Strom verarbeitender Algorithmus darf nur Zeichen für Zeichen des Stromes lesen, wahlfreier Zugriff (random access), d.&amp;nbsp;h. ein "Springen" auf den Eingabezeichen, ist nicht erlaubt.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein den Strom verarbeitender Algorithmus darf nur Zeichen für Zeichen des Stromes lesen, wahlfreier Zugriff (random access), d.&amp;nbsp;h. ein "Springen" auf den Eingabezeichen, ist nicht erlaubt.</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Zeile 17:</td> <td colspan="2" class="diff-lineno">Zeile 17:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Denn ein Datenstromalgorithmus darf wegen des nur sublinearen Speicherplatzes nicht die gesamte Eingabe speichern, sondern nur eine Zusammenfassung des bisher Gesehenen. Man sagt, der Algorithmus speichert eine Skizze (Sketch) der bisher gesehenen Eingabe.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Denn ein Datenstromalgorithmus darf wegen des nur sublinearen Speicherplatzes nicht die gesamte Eingabe speichern, sondern nur eine Zusammenfassung des bisher Gesehenen. Man sagt, der Algorithmus speichert eine Skizze (Sketch) der bisher gesehenen Eingabe.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Im folgenden Beispiel wird ein Algorithmus vorgestellt, der das gegebene Problem exakt lösen kann.<del style="font-weight: bold; text-decoration: none;"> </del></div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Im folgenden Beispiel wird ein Algorithmus vorgestellt, der das gegebene Problem exakt lösen kann.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Beispiele ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Beispiele ==</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Zeile 30:</td> <td colspan="2" class="diff-lineno">Zeile 30:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Eine einfache Methode zur Bestimmung der fehlenden Zahl wäre, alle Zahlen zu sammeln, zu [[Sortierverfahren|sortieren]] und diese geordnete [[Menge (Mathematik)|Menge]] dann der Reihe nach auf das fehlende Element zu durchsuchen. Dazu müssten aber wie beschrieben alle Zahlen gespeichert werden. Der Speicherverbrauch dieses [[Algorithmus]] beträgt dann &lt;math&gt;n \cdot 4&lt;/math&gt; Bytes, wenn angenommen wird, dass jede Zahl als 32-Bit [[Integer (Datentyp)|Integer]] gespeichert wird. So müsste man bspw. für &lt;math&gt;n = 1.000.000.000&lt;/math&gt; ca. 3,7 GB speichern. Um eine angemessene Performanz zu erreichen, müssten dabei diese Daten im Arbeitsspeicher abgelegt werden, doch dies ist aufgrund des großen Datenvolumens bei den meisten PCs nicht möglich. Somit müsste auf die Festplatte zurückgegriffen werden, was jedoch diesen Algorithmus extrem verlangsamt.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Eine einfache Methode zur Bestimmung der fehlenden Zahl wäre, alle Zahlen zu sammeln, zu [[Sortierverfahren|sortieren]] und diese geordnete [[Menge (Mathematik)|Menge]] dann der Reihe nach auf das fehlende Element zu durchsuchen. Dazu müssten aber wie beschrieben alle Zahlen gespeichert werden. Der Speicherverbrauch dieses [[Algorithmus]] beträgt dann &lt;math&gt;n \cdot 4&lt;/math&gt; Bytes, wenn angenommen wird, dass jede Zahl als 32-Bit [[Integer (Datentyp)|Integer]] gespeichert wird. So müsste man bspw. für &lt;math&gt;n = 1.000.000.000&lt;/math&gt; ca. 3,7 GB speichern. Um eine angemessene Performanz zu erreichen, müssten dabei diese Daten im Arbeitsspeicher abgelegt werden, doch dies ist aufgrund des großen Datenvolumens bei den meisten PCs nicht möglich. Somit müsste auf die Festplatte zurückgegriffen werden, was jedoch diesen Algorithmus extrem verlangsamt.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Wären alle Zahlen &lt;math&gt;1, ..., n&lt;/math&gt; im Datenstrom enthalten, so wäre die Summe der Elemente des Stromes gemäß der [[Gaußsche Summenformel|Gaußschen Summenformel]] &lt;math&gt;\sum_{i=1}^{n} i = \frac{n(n + 1)}{2}&lt;/math&gt;.<del style="font-weight: bold; text-decoration: none;"> </del></div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Wären alle Zahlen &lt;math&gt;1, ..., n&lt;/math&gt; im Datenstrom enthalten, so wäre die Summe der Elemente des Stromes gemäß der [[Gaußsche Summenformel|Gaußschen Summenformel]] &lt;math&gt;\sum_{i=1}^{n} i = \frac{n(n + 1)}{2}&lt;/math&gt;.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Bildet man daher die Summe der im Strom enthaltenen &lt;math&gt;n-1&lt;/math&gt; Elemente in &lt;math&gt;\pi&lt;/math&gt;, so kann man nach Lesen der gesamten Eingabe die gesuchte Zahl &lt;math&gt;s&lt;/math&gt; mit &lt;math&gt;s = \frac{n(n + 1)}{2} - \sum{\pi}&lt;/math&gt; bestimmen.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Bildet man daher die Summe der im Strom enthaltenen &lt;math&gt;n-1&lt;/math&gt; Elemente in &lt;math&gt;\pi&lt;/math&gt;, so kann man nach Lesen der gesamten Eingabe die gesuchte Zahl &lt;math&gt;s&lt;/math&gt; mit &lt;math&gt;s = \frac{n(n + 1)}{2} - \sum{\pi}&lt;/math&gt; bestimmen.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Dieser Algorithmus muss zur Berechnung der Summe und zur anschließenden Bestimmung von &lt;math&gt;s&lt;/math&gt; nur eine Zahl speichern und der Speicherplatz beträgt damit nur O(log n). Er ist damit ganz offensichtlich effizienter.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Dieser Algorithmus muss zur Berechnung der Summe und zur anschließenden Bestimmung von &lt;math&gt;s&lt;/math&gt; nur eine Zahl speichern und der Speicherplatz beträgt damit nur O(log n). Er ist damit ganz offensichtlich effizienter.</div></td> </tr> </table> Aka https://de.wikipedia.org/w/index.php?title=Datenstromalgorithmus&diff=173973121&oldid=prev Aka: Abkürzung korrigiert 2018-02-13T18:40:24Z <p>Abkürzung korrigiert</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 13. Februar 2018, 20:40 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 9:</td> <td colspan="2" class="diff-lineno">Zeile 9:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Man modelliert die kontinuierlich anfallenden Daten als Strom - eine Folge von Eingabezeichen, deren Länge häufig unbekannt ist, aber als sehr groß angenommen wird.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Man modelliert die kontinuierlich anfallenden Daten als Strom - eine Folge von Eingabezeichen, deren Länge häufig unbekannt ist, aber als sehr groß angenommen wird.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Ein den Strom verarbeitender Algorithmus darf nur Zeichen für Zeichen des Stromes lesen, wahlfreier Zugriff (random access), d.h. ein "Springen" auf den Eingabezeichen, ist nicht erlaubt.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Ein den Strom verarbeitender Algorithmus darf nur Zeichen für Zeichen des Stromes lesen, wahlfreier Zugriff (random access), d.<ins style="font-weight: bold; text-decoration: none;">&amp;nbsp;</ins>h. ein "Springen" auf den Eingabezeichen, ist nicht erlaubt.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Im Datenstromszenario werden wegen der Menge der anfallenden Daten im Wesentlichen zwei Effizienzforderungen gestellt: Die Speicherplatzkomplexität des Datenstromalgorithmus soll sublinear, idealerweise [[Logarithmus|logarithmisch]] oder polylogarithmisch sein, ebenso wie die Rechenzeit ''pro Eingabezeichen''.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Im Datenstromszenario werden wegen der Menge der anfallenden Daten im Wesentlichen zwei Effizienzforderungen gestellt: Die Speicherplatzkomplexität des Datenstromalgorithmus soll sublinear, idealerweise [[Logarithmus|logarithmisch]] oder polylogarithmisch sein, ebenso wie die Rechenzeit ''pro Eingabezeichen''.</div></td> </tr> </table> Aka https://de.wikipedia.org/w/index.php?title=Datenstromalgorithmus&diff=146314556&oldid=prev BlueBreezeWiki: + fr 2015-09-23T06:15:44Z <p>+ fr</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 23. September 2015, 08:15 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 42:</td> <td colspan="2" class="diff-lineno">Zeile 42:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Kategorie:Algorithmus]]</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Kategorie:Algorithmus]]</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[en:streaming algorithm]]</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[en:streaming algorithm]]</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[[fr:Algorithme de fouille de flots de données]]</div></td> </tr> </table> BlueBreezeWiki https://de.wikipedia.org/w/index.php?title=Datenstromalgorithmus&diff=145635412&oldid=prev 2A02:AA13:E100:3780:BA76:3FFF:FEE9:6CCF am 1. September 2015 um 19:18 Uhr 2015-09-01T19:18:49Z <p></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 1. September 2015, 21:18 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 41:</td> <td colspan="2" class="diff-lineno">Zeile 41:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Kategorie:Algorithmus]]</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Kategorie:Algorithmus]]</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[[en:streaming algorithm]]</div></td> </tr> </table> 2A02:AA13:E100:3780:BA76:3FFF:FEE9:6CCF https://de.wikipedia.org/w/index.php?title=Datenstromalgorithmus&diff=127278988&oldid=prev 141.58.55.153: /* Fehlende Zahl */ 2014-02-06T17:39:18Z <p><span class="autocomment">Fehlende Zahl</span></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 6. Februar 2014, 19:39 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 28:</td> <td colspan="2" class="diff-lineno">Zeile 28:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Sei &lt;math&gt;\pi&lt;/math&gt; eine [[Permutation]] der [[Menge (Mathematik)|Zahlenmenge]] &lt;math&gt;\{1, ..., n\}&lt;/math&gt; mit einem fehlenden Element &lt;math&gt;s&lt;/math&gt;.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Sei &lt;math&gt;\pi&lt;/math&gt; eine [[Permutation]] der [[Menge (Mathematik)|Zahlenmenge]] &lt;math&gt;\{1, ..., n\}&lt;/math&gt; mit einem fehlenden Element &lt;math&gt;s&lt;/math&gt;.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">Ein</del> einfache Methode zur Bestimmung der <del style="font-weight: bold; text-decoration: none;">fehlendes</del> Zahl wäre, alle Zahlen zu sammeln, zu [[Sortierverfahren|sortieren]] und diese geordnete [[Menge (Mathematik)|Menge]] dann der Reihe nach auf das fehlende Element zu durchsuchen. Dazu müssten aber wie beschrieben alle Zahlen gespeichert werden. Der Speicherverbrauch dieses [[Algorithmus]] beträgt dann &lt;math&gt;n \cdot 4&lt;/math&gt; Bytes, wenn angenommen wird, dass jede Zahl als 32-Bit [[Integer (Datentyp)|Integer]] gespeichert wird. So müsste man bspw. für &lt;math&gt;n = 1.000.000.000&lt;/math&gt; ca. 3,7 GB speichern. Um eine angemessene Performanz zu erreichen, müssten dabei diese Daten im Arbeitsspeicher abgelegt werden, doch dies ist aufgrund des großen Datenvolumens bei den meisten PCs nicht möglich. Somit müsste auf die Festplatte zurückgegriffen werden, was jedoch diesen Algorithmus extrem verlangsamt.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Eine</ins> einfache Methode zur Bestimmung der <ins style="font-weight: bold; text-decoration: none;">fehlenden</ins> Zahl wäre, alle Zahlen zu sammeln, zu [[Sortierverfahren|sortieren]] und diese geordnete [[Menge (Mathematik)|Menge]] dann der Reihe nach auf das fehlende Element zu durchsuchen. Dazu müssten aber wie beschrieben alle Zahlen gespeichert werden. Der Speicherverbrauch dieses [[Algorithmus]] beträgt dann &lt;math&gt;n \cdot 4&lt;/math&gt; Bytes, wenn angenommen wird, dass jede Zahl als 32-Bit [[Integer (Datentyp)|Integer]] gespeichert wird. So müsste man bspw. für &lt;math&gt;n = 1.000.000.000&lt;/math&gt; ca. 3,7 GB speichern. Um eine angemessene Performanz zu erreichen, müssten dabei diese Daten im Arbeitsspeicher abgelegt werden, doch dies ist aufgrund des großen Datenvolumens bei den meisten PCs nicht möglich. Somit müsste auf die Festplatte zurückgegriffen werden, was jedoch diesen Algorithmus extrem verlangsamt.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Wären alle Zahlen &lt;math&gt;1, ..., n&lt;/math&gt; im Datenstrom enthalten, so wäre die Summe der Elemente des Stromes gemäß der [[Gaußsche Summenformel|Gaußschen Summenformel]] &lt;math&gt;\sum_{i=1}^{n} i = \frac{n(n + 1)}{2}&lt;/math&gt;. </div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Wären alle Zahlen &lt;math&gt;1, ..., n&lt;/math&gt; im Datenstrom enthalten, so wäre die Summe der Elemente des Stromes gemäß der [[Gaußsche Summenformel|Gaußschen Summenformel]] &lt;math&gt;\sum_{i=1}^{n} i = \frac{n(n + 1)}{2}&lt;/math&gt;. </div></td> </tr> </table> 141.58.55.153 https://de.wikipedia.org/w/index.php?title=Datenstromalgorithmus&diff=122371778&oldid=prev 193.101.24.3 am 9. September 2013 um 11:24 Uhr 2013-09-09T11:24:25Z <p></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 9. September 2013, 13:24 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 1:</td> <td colspan="2" class="diff-lineno">Zeile 1:</td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>In der [[Informatik]] ist ein '''Datenstromalgorithmus''' ein [[Algorithmus]], der die Daten eines oder mehrerer [[Datenstrom|Datenströme]]<del style="font-weight: bold; text-decoration: none;">s</del> sequenziell liest und dabei direkt („online“) verarbeitet.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>In der [[Informatik]] ist ein '''Datenstromalgorithmus''' ein [[Algorithmus]], der die Daten eines oder mehrerer [[Datenstrom|Datenströme]] sequenziell liest und dabei direkt („online“) verarbeitet.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Anwendung ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Anwendung ==</div></td> </tr> </table> 193.101.24.3 https://de.wikipedia.org/w/index.php?title=Datenstromalgorithmus&diff=121188864&oldid=prev Woches: /* Literatur */ fix 2013-08-04T06:57:24Z <p><span class="autocomment">Literatur: </span> fix</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 4. August 2013, 08:57 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 36:</td> <td colspan="2" class="diff-lineno">Zeile 36:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Siehe auch ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Siehe auch ==</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* [[Platzkomplexität]]</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* [[Platzkomplexität]]</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><br /></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>== Literatur ==</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Weblinks ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Weblinks ==</div></td> </tr> </table> Woches https://de.wikipedia.org/w/index.php?title=Datenstromalgorithmus&diff=115273292&oldid=prev Aka: zu großen Zeilenabstand entfernt 2013-03-11T20:48:55Z <p>zu großen Zeilenabstand entfernt</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 11. März 2013, 22:48 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 38:</td> <td colspan="2" class="diff-lineno">Zeile 38:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Literatur ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Literatur ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><br /></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Weblinks ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Weblinks ==</div></td> </tr> </table> Aka