https://de.wikipedia.org/w/index.php?action=history&feed=atom&title=Range_Minimum_Query
Range Minimum Query - Versionsgeschichte
2025-06-28T09:49:18Z
Versionsgeschichte dieser Seite in Wikipedia
MediaWiki 1.45.0-wmf.7
https://de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=253233158&oldid=prev
Phzh: Form, typo
2025-02-11T19:06:02Z
<p>Form, typo</p>
<a href="//de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=253233158&oldid=251526950">Änderungen zeigen</a>
Phzh
https://de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=251526950&oldid=prev
2003:F9:5F00:DA00:E598:316C:FC9E:BCDB: ISBN von Google Books ersetzt durch ISBN aus DigiBib
2024-12-23T21:32:11Z
<p>ISBN von Google Books ersetzt durch ISBN aus DigiBib</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. Dezember 2024, 23:32 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 94:</td>
<td colspan="2" class="diff-lineno">Zeile 94:</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>Aufgrund des Lemmas ergibt sich eine Reduktion für in-Block RMQs, da nicht jeder Block einzeln vorberechnet wird, sondern nur die Antworten für alle möglichen Kartesischen Bäume über <math>s</math> Elementen ausreichen, denn jeder Block lässt sich in Linearzeit (Johannes Fischer and Heun 2011)<ref name="10.1137/090779759"/> auf einen Kartesischen Baum abbilden, da die Baumkonstruktion amortisiert in <math>\mathcal{O}(n)</math> liegt. Die Anzahl der Bäume entspricht der Catalan-Zahl <math>\textstyle C_s = \frac{1}{s+1} \binom{2s}{s}</math>, und es existiert eine Bijektion zwischen allen kartesischen Bäumen auf <math>s</math> Knoten und den Zahlen <math>[1, C_s]</math>, die mittels einem Algorithmus in Linearzeit berechnet werden kann<ref>{{Literatur |Autor=Donald E. Knuth |Titel=Generating All Trees—</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>Aufgrund des Lemmas ergibt sich eine Reduktion für in-Block RMQs, da nicht jeder Block einzeln vorberechnet wird, sondern nur die Antworten für alle möglichen Kartesischen Bäume über <math>s</math> Elementen ausreichen, denn jeder Block lässt sich in Linearzeit (Johannes Fischer and Heun 2011)<ref name="10.1137/090779759"/> auf einen Kartesischen Baum abbilden, da die Baumkonstruktion amortisiert in <math>\mathcal{O}(n)</math> liegt. Die Anzahl der Bäume entspricht der Catalan-Zahl <math>\textstyle C_s = \frac{1}{s+1} \binom{2s}{s}</math>, und es existiert eine Bijektion zwischen allen kartesischen Bäumen auf <math>s</math> Knoten und den Zahlen <math>[1, C_s]</math>, die mittels einem Algorithmus in Linearzeit berechnet werden kann<ref>{{Literatur |Autor=Donald E. Knuth |Titel=Generating All Trees—</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>History of Combinatorial Generation |Hrsg= |Sammelwerk=The Art of Computer Programming |Band=Vol. 4 |Nummer=Fasc. 4 |Verlag=Addison-Wesley |Ort=Upper Saddle River, NJ |Datum=2006 |ISBN=<del style="font-weight: bold; text-decoration: none;">9780132702348</del> |Seiten=4 ff.}}</ref>. Diese numerische Repräsentation eines kartesischen Baumes wird als ''Index'' für die vorberechnete in-Block Tabelle <math>P[1,C_s][1,s][1,s]</math> verwendet, und ihr Platzbedarf kann mittels [[Stirlingformel]] als <math>\log_2 C_s \approx 2s</math> Bits abgeschätzt werden.<br /></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>History of Combinatorial Generation |Hrsg= |Sammelwerk=The Art of Computer Programming |Band=Vol. 4 |Nummer=Fasc. 4 |Verlag=Addison-Wesley |Ort=Upper Saddle River, NJ |Datum=2006 |ISBN=<ins style="font-weight: bold; text-decoration: none;">9780321335708</ins> |Seiten=4 ff.}}</ref>. Diese numerische Repräsentation eines kartesischen Baumes wird als ''Index'' für die vorberechnete in-Block Tabelle <math>P[1,C_s][1,s][1,s]</math> verwendet, und ihr Platzbedarf kann mittels [[Stirlingformel]] als <math>\log_2 C_s \approx 2s</math> Bits abgeschätzt werden.<br /></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>Insgesamt ergibt sich daraus ein Platzbedarf von <math>|P| = \mathcal{O}(2^{2s} \cdot s \cdot s) = \mathcal{O}(\sqrt{n}\,\log^2 n) = o(n)</math>.<br /></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>Insgesamt ergibt sich daraus ein Platzbedarf von <math>|P| = \mathcal{O}(2^{2s} \cdot s \cdot s) = \mathcal{O}(\sqrt{n}\,\log^2 n) = o(n)</math>.<br /></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>
</table>
2003:F9:5F00:DA00:E598:316C:FC9E:BCDB
https://de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=251526039&oldid=prev
2003:F9:5F00:DA00:E598:316C:FC9E:BCDB: Falscher Index korrigier
2024-12-23T20:59:49Z
<p>Falscher Index korrigier</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. Dezember 2024, 22:59 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 93:</td>
<td colspan="2" class="diff-lineno">Zeile 93:</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>Der interessierte Leser kann den Beweis des Lemmas in Johannes Fischer and Heun (2011, S.&nbsp;472)<ref name="10.1137/090779759"/> nachlesen.</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>Der interessierte Leser kann den Beweis des Lemmas in Johannes Fischer and Heun (2011, S.&nbsp;472)<ref name="10.1137/090779759"/> nachlesen.</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>Aufgrund des Lemmas ergibt sich eine Reduktion für in-Block RMQs, da nicht jeder Block einzeln vorberechnet wird, sondern nur die Antworten für alle möglichen Kartesischen Bäume über <math>s</math> Elementen ausreichen, denn jeder Block lässt sich in Linearzeit (Johannes Fischer and Heun 2011)<ref name="10.1137/090779759"/> auf einen Kartesischen Baum abbilden, da die Baumkonstruktion amortisiert in <math>\mathcal{O}(n)</math> liegt. Die Anzahl der Bäume entspricht der Catalan-Zahl <math>\textstyle C_s = \frac{1}{s+1} \binom{2s}{s}</math>, und es existiert eine Bijektion zwischen allen kartesischen Bäumen auf <math><del style="font-weight: bold; text-decoration: none;">n</del></math> Knoten und den Zahlen <math>[1, C_s]</math>, die mittels einem Algorithmus in Linearzeit berechnet werden kann<ref>{{Literatur |Autor=Donald E. Knuth |Titel=Generating All Trees—</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>Aufgrund des Lemmas ergibt sich eine Reduktion für in-Block RMQs, da nicht jeder Block einzeln vorberechnet wird, sondern nur die Antworten für alle möglichen Kartesischen Bäume über <math>s</math> Elementen ausreichen, denn jeder Block lässt sich in Linearzeit (Johannes Fischer and Heun 2011)<ref name="10.1137/090779759"/> auf einen Kartesischen Baum abbilden, da die Baumkonstruktion amortisiert in <math>\mathcal{O}(n)</math> liegt. Die Anzahl der Bäume entspricht der Catalan-Zahl <math>\textstyle C_s = \frac{1}{s+1} \binom{2s}{s}</math>, und es existiert eine Bijektion zwischen allen kartesischen Bäumen auf <math><ins style="font-weight: bold; text-decoration: none;">s</ins></math> Knoten und den Zahlen <math>[1, C_s]</math>, die mittels einem Algorithmus in Linearzeit berechnet werden kann<ref>{{Literatur |Autor=Donald E. Knuth |Titel=Generating All Trees—</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>History of Combinatorial Generation |Hrsg= |Sammelwerk=The Art of Computer Programming |Band=Vol. 4 |Nummer=Fasc. 4 |Verlag=Addison-Wesley |Ort=Upper Saddle River, NJ |Datum=2006 |ISBN=9780132702348 |Seiten=4 ff.}}</ref>. Diese numerische Repräsentation eines kartesischen Baumes wird als ''Index'' für die vorberechnete in-Block Tabelle <math>P[1,C_s][1,s][1,s]</math> verwendet, und ihr Platzbedarf kann mittels [[Stirlingformel]] als <math>\log_2 C_s \approx 2s</math> Bits abgeschätzt werden.<br /></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>History of Combinatorial Generation |Hrsg= |Sammelwerk=The Art of Computer Programming |Band=Vol. 4 |Nummer=Fasc. 4 |Verlag=Addison-Wesley |Ort=Upper Saddle River, NJ |Datum=2006 |ISBN=9780132702348 |Seiten=4 ff.}}</ref>. Diese numerische Repräsentation eines kartesischen Baumes wird als ''Index'' für die vorberechnete in-Block Tabelle <math>P[1,C_s][1,s][1,s]</math> verwendet, und ihr Platzbedarf kann mittels [[Stirlingformel]] als <math>\log_2 C_s \approx 2s</math> Bits abgeschätzt werden.<br /></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>Insgesamt ergibt sich daraus ein Platzbedarf von <math>|P| = \mathcal{O}(2^{2s} \cdot s \cdot s) = \mathcal{O}(\sqrt{n}\,\log^2 n) = o(n)</math>.<br /></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>Insgesamt ergibt sich daraus ein Platzbedarf von <math>|P| = \mathcal{O}(2^{2s} \cdot s \cdot s) = \mathcal{O}(\sqrt{n}\,\log^2 n) = o(n)</math>.<br /></div></td>
</tr>
</table>
2003:F9:5F00:DA00:E598:316C:FC9E:BCDB
https://de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=251525917&oldid=prev
2003:F9:5F00:DA00:E598:316C:FC9E:BCDB: Konsistenteres Indexing
2024-12-23T20:55:41Z
<p>Konsistenteres Indexing</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. Dezember 2024, 22:55 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 93:</td>
<td colspan="2" class="diff-lineno">Zeile 93:</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>Der interessierte Leser kann den Beweis des Lemmas in Johannes Fischer and Heun (2011, S.&nbsp;472)<ref name="10.1137/090779759"/> nachlesen.</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>Der interessierte Leser kann den Beweis des Lemmas in Johannes Fischer and Heun (2011, S.&nbsp;472)<ref name="10.1137/090779759"/> nachlesen.</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>Aufgrund des Lemmas ergibt sich eine Reduktion für in-Block RMQs, da nicht jeder Block einzeln vorberechnet wird, sondern nur die Antworten für alle möglichen Kartesischen Bäume über <math>s</math> Elementen ausreichen, denn jeder Block lässt sich in Linearzeit (Johannes Fischer and Heun 2011)<ref name="10.1137/090779759"/> auf einen Kartesischen Baum abbilden, da die Baumkonstruktion amortisiert in <math>\mathcal{O}(n)</math> liegt. Die Anzahl der Bäume entspricht der Catalan-Zahl <math>\textstyle C_s = \frac{1}{s+1} \binom{2s}{s}</math>, und es existiert eine Bijektion zwischen allen kartesischen Bäumen auf <math>n</math> Knoten und den Zahlen <math>[<del style="font-weight: bold; text-decoration: none;">0</del>, C_s<del style="font-weight: bold; text-decoration: none;">-1</del>]</math>, die mittels einem Algorithmus in Linearzeit berechnet werden kann<ref>{{Literatur |Autor=Donald E. Knuth |Titel=Generating All Trees—</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>Aufgrund des Lemmas ergibt sich eine Reduktion für in-Block RMQs, da nicht jeder Block einzeln vorberechnet wird, sondern nur die Antworten für alle möglichen Kartesischen Bäume über <math>s</math> Elementen ausreichen, denn jeder Block lässt sich in Linearzeit (Johannes Fischer and Heun 2011)<ref name="10.1137/090779759"/> auf einen Kartesischen Baum abbilden, da die Baumkonstruktion amortisiert in <math>\mathcal{O}(n)</math> liegt. Die Anzahl der Bäume entspricht der Catalan-Zahl <math>\textstyle C_s = \frac{1}{s+1} \binom{2s}{s}</math>, und es existiert eine Bijektion zwischen allen kartesischen Bäumen auf <math>n</math> Knoten und den Zahlen <math>[<ins style="font-weight: bold; text-decoration: none;">1</ins>, C_s]</math>, die mittels einem Algorithmus in Linearzeit berechnet werden kann<ref>{{Literatur |Autor=Donald E. Knuth |Titel=Generating All Trees—</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>History of Combinatorial Generation |Hrsg= |Sammelwerk=The Art of Computer Programming |Band=Vol. 4 |Nummer=Fasc. 4 |Verlag=Addison-Wesley |Ort=Upper Saddle River, NJ |Datum=2006 |ISBN=9780132702348 |Seiten=4 ff.}}</ref>. Diese numerische Repräsentation eines kartesischen Baumes wird als ''Index'' für die vorberechnete in-Block Tabelle <math>P[1,C_s][1,s][1,s]</math> verwendet, und ihr Platzbedarf kann mittels [[Stirlingformel]] als <math>\log_2 C_s \approx 2s</math> Bits abgeschätzt werden.<br /></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>History of Combinatorial Generation |Hrsg= |Sammelwerk=The Art of Computer Programming |Band=Vol. 4 |Nummer=Fasc. 4 |Verlag=Addison-Wesley |Ort=Upper Saddle River, NJ |Datum=2006 |ISBN=9780132702348 |Seiten=4 ff.}}</ref>. Diese numerische Repräsentation eines kartesischen Baumes wird als ''Index'' für die vorberechnete in-Block Tabelle <math>P[1,C_s][1,s][1,s]</math> verwendet, und ihr Platzbedarf kann mittels [[Stirlingformel]] als <math>\log_2 C_s \approx 2s</math> Bits abgeschätzt werden.<br /></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>Insgesamt ergibt sich daraus ein Platzbedarf von <math>|P| = \mathcal{O}(2^{2s} \cdot s \cdot s) = \mathcal{O}(\sqrt{n}\,\log^2 n) = o(n)</math>.<br /></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>Insgesamt ergibt sich daraus ein Platzbedarf von <math>|P| = \mathcal{O}(2^{2s} \cdot s \cdot s) = \mathcal{O}(\sqrt{n}\,\log^2 n) = o(n)</math>.<br /></div></td>
</tr>
</table>
2003:F9:5F00:DA00:E598:316C:FC9E:BCDB
https://de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=251525847&oldid=prev
2003:F9:5F00:DA00:E598:316C:FC9E:BCDB: LOUDS eignet sich nichts zur Rekonstruktion von Kartesischen Bäumen, stattdessen muss man die Bijektion aus dem ursprünglichen Paper von Fischer und Heun verwenden.
2024-12-23T20:53:07Z
<p>LOUDS eignet sich nichts zur Rekonstruktion von Kartesischen Bäumen, stattdessen muss man die Bijektion aus dem ursprünglichen Paper von Fischer und Heun verwenden.</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. Dezember 2024, 22:53 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 93:</td>
<td colspan="2" class="diff-lineno">Zeile 93:</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>Der interessierte Leser kann den Beweis des Lemmas in Johannes Fischer and Heun (2011, S.&nbsp;472)<ref name="10.1137/090779759"/> nachlesen.</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>Der interessierte Leser kann den Beweis des Lemmas in Johannes Fischer and Heun (2011, S.&nbsp;472)<ref name="10.1137/090779759"/> nachlesen.</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>Aufgrund des Lemmas ergibt sich eine Reduktion für in-Block RMQs, da nicht jeder Block einzeln vorberechnet wird, sondern nur die Antworten für alle möglichen Kartesischen Bäume über <math>s</math> Elementen ausreichen, denn jeder Block lässt sich in Linearzeit (Johannes Fischer and Heun 2011)<ref name="10.1137/090779759"/> auf einen Kartesischen Baum abbilden, da die Baumkonstruktion amortisiert in <math>\mathcal{O}(n)</math> liegt. Die Anzahl der Bäume entspricht der Catalan-Zahl <math>\textstyle C_s = \frac{1}{s+1} \binom{2s}{s}</math><del style="font-weight: bold; text-decoration: none;">.</del> <del style="font-weight: bold; text-decoration: none;">Die</del> <del style="font-weight: bold; text-decoration: none;">''Bitmuster''</del> <del style="font-weight: bold; text-decoration: none;">der</del> <del style="font-weight: bold; text-decoration: none;">Bäume</del> <del style="font-weight: bold; text-decoration: none;">dienen</del> <del style="font-weight: bold; text-decoration: none;">als</del> <del style="font-weight: bold; text-decoration: none;">''Index''</del> <del style="font-weight: bold; text-decoration: none;">für</del> <del style="font-weight: bold; text-decoration: none;">die</del> <del style="font-weight: bold; text-decoration: none;">vorberechnete</del> <del style="font-weight: bold; text-decoration: none;">in-Block</del> <del style="font-weight: bold; text-decoration: none;">Tabelle</del> <math><del style="font-weight: bold; text-decoration: none;">P</del>[<del style="font-weight: bold; text-decoration: none;">1</del>,C_s<del style="font-weight: bold; text-decoration: none;">][</del>1<del style="font-weight: bold; text-decoration: none;">,s][1,s</del>]</math><del style="font-weight: bold; text-decoration: none;">.</del> <del style="font-weight: bold; text-decoration: none;">Ein</del> <del style="font-weight: bold; text-decoration: none;">Kartesischer</del> <del style="font-weight: bold; text-decoration: none;">Baum</del> <del style="font-weight: bold; text-decoration: none;">wird</del> <del style="font-weight: bold; text-decoration: none;">hierbei</del> <del style="font-weight: bold; text-decoration: none;">durch</del> <del style="font-weight: bold; text-decoration: none;">seine</del> <del style="font-weight: bold; text-decoration: none;">''Level-order</del> <del style="font-weight: bold; text-decoration: none;">unary</del> <del style="font-weight: bold; text-decoration: none;">degree</del> <del style="font-weight: bold; text-decoration: none;">sequence''</del> <del style="font-weight: bold; text-decoration: none;">(LOUDS)</del> <del style="font-weight: bold; text-decoration: none;">eindeutig</del> <del style="font-weight: bold; text-decoration: none;">repräsentiert, welche von Jacobson (1989)<ref name="10.1109/SFCS.1989.63533">{{cite</del> <del style="font-weight: bold; text-decoration: none;">journal</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>Aufgrund des Lemmas ergibt sich eine Reduktion für in-Block RMQs, da nicht jeder Block einzeln vorberechnet wird, sondern nur die Antworten für alle möglichen Kartesischen Bäume über <math>s</math> Elementen ausreichen, denn jeder Block lässt sich in Linearzeit (Johannes Fischer and Heun 2011)<ref name="10.1137/090779759"/> auf einen Kartesischen Baum abbilden, da die Baumkonstruktion amortisiert in <math>\mathcal{O}(n)</math> liegt. Die Anzahl der Bäume entspricht der Catalan-Zahl <math>\textstyle C_s = \frac{1}{s+1} \binom{2s}{s}</math><ins style="font-weight: bold; text-decoration: none;">,</ins> <ins style="font-weight: bold; text-decoration: none;">und</ins> <ins style="font-weight: bold; text-decoration: none;">es</ins> <ins style="font-weight: bold; text-decoration: none;">existiert</ins> <ins style="font-weight: bold; text-decoration: none;">eine</ins> <ins style="font-weight: bold; text-decoration: none;">Bijektion</ins> <ins style="font-weight: bold; text-decoration: none;">zwischen</ins> <ins style="font-weight: bold; text-decoration: none;">allen</ins> <ins style="font-weight: bold; text-decoration: none;">kartesischen</ins> <ins style="font-weight: bold; text-decoration: none;">Bäumen</ins> <ins style="font-weight: bold; text-decoration: none;">auf</ins> <ins style="font-weight: bold; text-decoration: none;"><math>n</math> Knoten und den</ins> <ins style="font-weight: bold; text-decoration: none;">Zahlen</ins> <math>[<ins style="font-weight: bold; text-decoration: none;">0</ins>,<ins style="font-weight: bold; text-decoration: none;"> </ins>C_s<ins style="font-weight: bold; text-decoration: none;">-</ins>1]</math><ins style="font-weight: bold; text-decoration: none;">,</ins> <ins style="font-weight: bold; text-decoration: none;">die</ins> <ins style="font-weight: bold; text-decoration: none;">mittels</ins> <ins style="font-weight: bold; text-decoration: none;">einem</ins> <ins style="font-weight: bold; text-decoration: none;">Algorithmus</ins> <ins style="font-weight: bold; text-decoration: none;">in</ins> <ins style="font-weight: bold; text-decoration: none;">Linearzeit</ins> <ins style="font-weight: bold; text-decoration: none;">berechnet</ins> <ins style="font-weight: bold; text-decoration: none;">werden</ins> <ins style="font-weight: bold; text-decoration: none;">kann<ref>{{Literatur</ins> <ins style="font-weight: bold; text-decoration: none;">|Autor=Donald</ins> <ins style="font-weight: bold; text-decoration: none;">E.</ins> <ins style="font-weight: bold; text-decoration: none;">Knuth</ins> <ins style="font-weight: bold; text-decoration: none;">|Titel=Generating</ins> <ins style="font-weight: bold; text-decoration: none;">All</ins> <ins style="font-weight: bold; text-decoration: none;">Trees—</ins></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>History of Combinatorial Generation |Hrsg= |Sammelwerk=The Art of Computer Programming |Band=Vol. 4 |Nummer=Fasc. 4 |Verlag=Addison-Wesley |Ort=Upper Saddle River, NJ |Datum=2006 |ISBN=9780132702348 |Seiten=4 ff.}}</ref>. Diese numerische Repräsentation eines kartesischen Baumes wird als ''Index'' für die vorberechnete in-Block Tabelle <math>P[1,C_s][1,s][1,s]</math> verwendet, und ihr Platzbedarf kann mittels [[Stirlingformel]] als <math>\log_2 C_s \approx 2s</math> Bits abgeschätzt werden.<br /></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>| author = Jacobson, G.</div></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>| authorlink =</div></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>| year = 1989</div></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>| title = Space-efficient static trees and graphs</div></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>| journal = Foundations of Computer Science, 1989., 30th Annual Symposium</div></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>| pages = 549–554</div></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>| doi = 10.1109/SFCS.1989.63533</div></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>}}</ref></div></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>beschrieben wird und <math>2n-1</math> Bits benötigt.<br /></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;"><div>Insgesamt ergibt sich daraus ein Platzbedarf von <math>|P| = \mathcal{O}(2^{2s} \cdot s \cdot s) = \mathcal{O}(\sqrt{n}\,\log^2 n) = o(n)</math>.<br /></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>Insgesamt ergibt sich daraus ein Platzbedarf von <math>|P| = \mathcal{O}(2^{2s} \cdot s \cdot s) = \mathcal{O}(\sqrt{n}\,\log^2 n) = o(n)</math>.<br /></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>
</table>
2003:F9:5F00:DA00:E598:316C:FC9E:BCDB
https://de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=244978178&oldid=prev
Aka: /* Effiziente Konstruktion */ Halbgeviertstrich
2024-05-15T06:35:11Z
<p><span class="autocomment">Effiziente Konstruktion: </span> 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 15. Mai 2024, 08:35 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>| title = The Cell Probe Complexity of Succinct Data Structures</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>| title = The Cell Probe Complexity of Succinct Data Structures</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>| journal = Automata, Languages and Programming</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>| journal = Automata, Languages and Programming</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>| pages = <del style="font-weight: bold; text-decoration: none;">190-190</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>| pages = <ins style="font-weight: bold; text-decoration: none;">190–190</ins></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>| doi = 10.1007/3-540-45061-0_28</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>| doi = 10.1007/3-540-45061-0_28</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>| pmid = </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>| pmid = </div></td>
</tr>
</table>
Aka
https://de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=244971490&oldid=prev
Thomas Dresler: Tippfehler korrigiert
2024-05-14T20:27:14Z
<p>Tippfehler 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 14. Mai 2024, 22:27 Uhr</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;"><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>* '''Lineares Scannen:''' Durch ''Scannen'' von <math>A[l, r]</math> wird für jede Query eine ''lineare'' Anfragezeit in <math>\mathcal{O}(n)</math> worst-case und ein Platzbedarf von <math>\mathcal{O}(n)</math> erreicht.</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>* '''Lineares Scannen:''' Durch ''Scannen'' von <math>A[l, r]</math> wird für jede Query eine ''lineare'' Anfragezeit in <math>\mathcal{O}(n)</math> worst-case und ein Platzbedarf von <math>\mathcal{O}(n)</math> erreicht.</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>* '''Vorberechnung einer Lookup<del style="font-weight: bold; text-decoration: none;"> </del>Tabelle:''' Naiv wird eine Tabelle vorberechnet, die die Antworten auf alle möglichen Range Minimum Anfragen speichert. Somit wird eine ''konstante'' Anfragezeit in <math>\mathcal{O}(1)</math> erreicht, wobei <math>\tbinom{n}{2}</math> Kombinationen <math>\mathcal{O}(n^2)</math> Platz benötigen.</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>* '''Vorberechnung einer Lookup<ins style="font-weight: bold; text-decoration: none;">-</ins>Tabelle:''' Naiv wird eine Tabelle vorberechnet, die die Antworten auf alle möglichen Range Minimum Anfragen speichert. Somit wird eine ''konstante'' Anfragezeit in <math>\mathcal{O}(1)</math> erreicht, wobei <math>\tbinom{n}{2}</math> Kombinationen <math>\mathcal{O}(n^2)</math> Platz benötigen.</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>Angenommen wird allerdings, dass es sich bei <math>A</math> um ein statisches Array handelt und die Anfragen on-line gestellt werden, wodurch eine geschickte Vorberechnung und die Konstruktion einer geeigneten Datenstruktur die Anfragezeit deutlich reduzieren kann. Hierbei wird eine nahezu ''konstante'' Anfragezeit mit ''linearem'' Platzverbrauch angestrebt.</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>Angenommen wird allerdings, dass es sich bei <math>A</math> um ein statisches Array handelt und die Anfragen on-line gestellt werden, wodurch eine geschickte Vorberechnung und die Konstruktion einer geeigneten Datenstruktur die Anfragezeit deutlich reduzieren kann. Hierbei wird eine nahezu ''konstante'' Anfragezeit mit ''linearem'' Platzverbrauch angestrebt.</div></td>
</tr>
</table>
Thomas Dresler
https://de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=232078354&oldid=prev
Aka: /* Einzelnachweise */ bereits in Unterkategorie enthalten
2023-03-22T21:29:48Z
<p><span class="autocomment">Einzelnachweise: </span> bereits in Unterkategorie enthalten</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 22. März 2023, 23:29 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 155:</td>
<td colspan="2" class="diff-lineno">Zeile 155:</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:Suchalgorithmus]]</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:Suchalgorithmus]]</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>[[Kategorie:Algorithmus]]</div></td>
<td colspan="2" class="diff-empty diff-side-added"></td>
</tr>
</table>
Aka
https://de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=210572194&oldid=prev
Rolf acker: /* Effiziente Konstruktion */ typo ("[S]truktur")
2021-04-05T11:43:13Z
<p><span class="autocomment">Effiziente Konstruktion: </span> typo ("[S]truktur")</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 5. April 2021, 13:43 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 22:</td>
<td colspan="2" class="diff-lineno">Zeile 22:</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>== Effiziente Konstruktion ==</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>== Effiziente Konstruktion ==</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>Die vorberechneten RMQ-<del style="font-weight: bold; text-decoration: none;">Datenstukturen</del> können in zwei Kategorien eingeteilt werden: (a) Array-Indexierung und (b) Array-Codierung. Im Fall (a) benötigt die vorberechnete Struktur Zugriff auf das Array <math>A</math> um darauf RMQs zu beantworten. Im Fall (b) ist ein Zugriff auf <math>A</math> nicht notwendig, um eine RMQ zu beantworten.<ref name="10.1007/3-540-45061-0_28">{{cite journal</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>Die vorberechneten RMQ-<ins style="font-weight: bold; text-decoration: none;">Datenstrukturen</ins> können in zwei Kategorien eingeteilt werden: (a) Array-Indexierung und (b) Array-Codierung. Im Fall (a) benötigt die vorberechnete Struktur Zugriff auf das Array <math>A</math> um darauf RMQs zu beantworten. Im Fall (b) ist ein Zugriff auf <math>A</math> nicht notwendig, um eine RMQ zu beantworten.<ref name="10.1007/3-540-45061-0_28">{{cite journal</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>| author = Gál, A. and Miltersen, P.</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>| author = Gál, A. and Miltersen, P.</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>| authorlink =</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>| authorlink =</div></td>
</tr>
<tr>
<td colspan="2" class="diff-lineno">Zeile 91:</td>
<td colspan="2" class="diff-lineno">Zeile 91:</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>'''Lemma: ''' Falls die Kartesischen Bäume zweier Arrays <math>B_i, B_j; i\ne j</math> die gleiche Struktur aufweisen, so gilt <math>\forall l,r; 1 \le l \le r \le n : \operatorname{RMQ}_{B_i}(l, r) = \operatorname{RMQ}_{B_j}(l, r)</math>.<br /></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>'''Lemma: ''' Falls die Kartesischen Bäume zweier Arrays <math>B_i, B_j; i\ne j</math> die gleiche Struktur aufweisen, so gilt <math>\forall l,r; 1 \le l \le r \le n : \operatorname{RMQ}_{B_i}(l, r) = \operatorname{RMQ}_{B_j}(l, r)</math>.<br /></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>Der interessierte Leser kann den Beweis des Lemmas in Johannes Fischer and Heun (2011, S.472)<ref name="10.1137/090779759"/> nachlesen.</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>Der interessierte Leser kann den Beweis des Lemmas in Johannes Fischer and Heun (2011, S.<ins style="font-weight: bold; text-decoration: none;">&nbsp;</ins>472)<ref name="10.1137/090779759"/> nachlesen.</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>Aufgrund des Lemmas ergibt sich eine Reduktion für in-Block RMQs, da nicht jeder Block einzeln vorberechnet wird, sondern nur die Antworten für alle möglichen Kartesischen Bäume über <math>s</math> Elementen ausreichen, denn jeder Block lässt sich in Linearzeit (Johannes Fischer and Heun 2011)<ref name="10.1137/090779759"/> auf einen Kartesischen Baum abbilden, da die Baumkonstruktion amortisiert in <math>\mathcal{O}(n)</math> liegt. Die Anzahl der Bäume entspricht der Catalan-Zahl <math>\textstyle C_s = \frac{1}{s+1} \binom{2s}{s}</math>. Die ''Bitmuster'' der Bäume dienen als ''Index'' für die vorberechnete in-Block Tabelle <math>P[1,C_s][1,s][1,s]</math>. Ein Kartesischer Baum wird hierbei durch seine ''Level-order unary degree sequence'' (LOUDS) eindeutig repräsentiert, welche von Jacobson (1989)<ref name="10.1109/SFCS.1989.63533">{{cite journal</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>Aufgrund des Lemmas ergibt sich eine Reduktion für in-Block RMQs, da nicht jeder Block einzeln vorberechnet wird, sondern nur die Antworten für alle möglichen Kartesischen Bäume über <math>s</math> Elementen ausreichen, denn jeder Block lässt sich in Linearzeit (Johannes Fischer and Heun 2011)<ref name="10.1137/090779759"/> auf einen Kartesischen Baum abbilden, da die Baumkonstruktion amortisiert in <math>\mathcal{O}(n)</math> liegt. Die Anzahl der Bäume entspricht der Catalan-Zahl <math>\textstyle C_s = \frac{1}{s+1} \binom{2s}{s}</math>. Die ''Bitmuster'' der Bäume dienen als ''Index'' für die vorberechnete in-Block Tabelle <math>P[1,C_s][1,s][1,s]</math>. Ein Kartesischer Baum wird hierbei durch seine ''Level-order unary degree sequence'' (LOUDS) eindeutig repräsentiert, welche von Jacobson (1989)<ref name="10.1109/SFCS.1989.63533">{{cite journal</div></td>
</tr>
</table>
Rolf acker
https://de.wikipedia.org/w/index.php?title=Range_Minimum_Query&diff=208891954&oldid=prev
Aka: /* Linearithmischer Platzbedarf */ https
2021-02-16T19:52:30Z
<p><span class="autocomment">Linearithmischer Platzbedarf: </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 16. Februar 2021, 21:52 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 52:</td>
<td colspan="2" class="diff-lineno">Zeile 52:</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>| pmid = </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>| pmid = </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>| id = {{ISSN|01966774}}</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>| id = {{ISSN|01966774}}</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>| url = <del style="font-weight: bold; text-decoration: none;">http</del>://linkinghub.elsevier.com/retrieve/pii/S0196677405000854</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>| url = <ins style="font-weight: bold; text-decoration: none;">https</ins>://linkinghub.elsevier.com/retrieve/pii/S0196677405000854</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>}}</ref> wird eine Möglichkeit beschrieben, um <math>\langle\mathcal{O}(n \log n), \mathcal{O}(1)\rangle</math> zu erreichen. Hierzu werden die Ergebnisse für alle möglichen Startpositionen <math>(1, \dots, n)</math> und Längen der Form <math>2^i : i \leq x=\mathcal{O}(\log n)</math> vorberechnet. Aufgrund dessen wird die tatsächliche RMQ in maximal zwei gleich lange Teilanfragen zerlegt, deren Längen Zweierpotenzen sind und sich möglicherweise überlappen. Hierbei wird die größtmögliche Zweierpotenz <math>h</math> gewählt, wobei <math>h = \lfloor \log_2{(r-l+1)} \rfloor</math> ist. Aufgrund der Vorberechnung kann das Ergebnis über das Intervall von <math>2^h</math> in konstanter Zeit bestimmt werden. Abbildung&nbsp;2 verbildlicht das Vorgehen und zeigt beispielhaft, wie die RMQ (Intervall = rote Linie) in zwei RMQs (graue Linien) zerlegt wird.<br /></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>}}</ref> wird eine Möglichkeit beschrieben, um <math>\langle\mathcal{O}(n \log n), \mathcal{O}(1)\rangle</math> zu erreichen. Hierzu werden die Ergebnisse für alle möglichen Startpositionen <math>(1, \dots, n)</math> und Längen der Form <math>2^i : i \leq x=\mathcal{O}(\log n)</math> vorberechnet. Aufgrund dessen wird die tatsächliche RMQ in maximal zwei gleich lange Teilanfragen zerlegt, deren Längen Zweierpotenzen sind und sich möglicherweise überlappen. Hierbei wird die größtmögliche Zweierpotenz <math>h</math> gewählt, wobei <math>h = \lfloor \log_2{(r-l+1)} \rfloor</math> ist. Aufgrund der Vorberechnung kann das Ergebnis über das Intervall von <math>2^h</math> in konstanter Zeit bestimmt werden. Abbildung&nbsp;2 verbildlicht das Vorgehen und zeigt beispielhaft, wie die RMQ (Intervall = rote Linie) in zwei RMQs (graue Linien) zerlegt wird.<br /></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>Sei <math>M</math> die Tabelle mit den vorberechneten Antworten. Der Algorithmus umfasst insgesamt drei Schritte, um das Ergebnis einer RMQ zu 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>Sei <math>M</math> die Tabelle mit den vorberechneten Antworten. Der Algorithmus umfasst insgesamt drei Schritte, um das Ergebnis einer RMQ zu bestimmen:</div></td>
</tr>
</table>
Aka