Imported Upstream version 1.64.0
[platform/upstream/boost.git] / libs / sort / doc / html / sort / sort_hpp / rationale / why_spreadsort.html
index 13bb6dd..0d8b4b4 100644 (file)
@@ -27,7 +27,7 @@
 <a name="sort.sort_hpp.rationale.why_spreadsort"></a><a class="link" href="why_spreadsort.html" title="Why spreadsort?">Why spreadsort?</a>
 </h4></div></div></div>
 <p>
-          The <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/spreadsort_idp23536624.html" title="Function template spreadsort">spreadsort</a></code></code>
+          The <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/spreadsort_idp25976480.html" title="Function template spreadsort">spreadsort</a></code></code>
           algorithm used in this library is designed to provide best possible worst-case
           performance, while still being cache-friendly. It provides the better of
           <span class="emphasis"><em>&#119926;(N*log(K/S + S))</em></span> and <span class="emphasis"><em>&#119926;(N*log(N))</em></span>
@@ -48,8 +48,8 @@
           this makes it especially inefficient.
         </p>
 <p>
-          <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/integer_sort_idp16395296.html" title="Function template integer_sort">integer_sort</a></code></code>
-          and <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/float_sort_idp16611168.html" title="Function template float_sort">float_sort</a></code></code>
+          <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/integer_sort_idp18898880.html" title="Function template integer_sort">integer_sort</a></code></code>
+          and <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/float_sort_idp24766592.html" title="Function template float_sort">float_sort</a></code></code>
           use <a href="http://en.wikipedia.org/wiki/Introsort" target="_top">introsort</a>
           instead, which provides <span class="emphasis"><em>&#119926;(N*log(N))</em></span> performance for
           these medium-sized pieces. Also, <code class="computeroutput"><span class="identifier">flash_sort</span></code>'s
           hybrid algorithm for strings that uses substantial additional memory.
         </p>
 <p>
-          <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp23596528.html" title="Function template string_sort">string_sort</a></code></code>
+          <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp26036384.html" title="Function template string_sort">string_sort</a></code></code>
           uses minimal additional memory by comparison. Speed comparisons between
-          the two haven't been made, but the better memory efficiency makes <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp23596528.html" title="Function template string_sort">string_sort</a></code></code>
+          the two haven't been made, but the better memory efficiency makes <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp26036384.html" title="Function template string_sort">string_sort</a></code></code>
           more general.
         </p>
 <p>
-          <code class="computeroutput"><span class="identifier">postal_sort</span></code> and <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp23596528.html" title="Function template string_sort">string_sort</a></code></code>
+          <code class="computeroutput"><span class="identifier">postal_sort</span></code> and <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp26036384.html" title="Function template string_sort">string_sort</a></code></code>
           are similar. A direct performance comparison would be welcome, but an efficient
           version of <code class="computeroutput"><span class="identifier">postal_sort</span></code>
           was not found in a search for source.
         </p>
 <p>
-          <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp23596528.html" title="Function template string_sort">string_sort</a></code></code>
+          <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp26036384.html" title="Function template string_sort">string_sort</a></code></code>
           is most similar to the <a href="http://en.wikipedia.org/wiki/American_flag_sort" target="_top">American
           flag sort</a> algorithm. The main difference is that it doesn't bother
           trying to optimize how empty buckets/piles are handled, instead just checking
         </p>
 <p>
           Another difference is not applying the stack-size restriction. Because
-          of the equality check in <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp23596528.html" title="Function template string_sort">string_sort</a></code></code>,
+          of the equality check in <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp26036384.html" title="Function template string_sort">string_sort</a></code></code>,
           it would take <span class="emphasis"><em>m*m</em></span> memory worth of strings to force
-          <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp23596528.html" title="Function template string_sort">string_sort</a></code></code>
+          <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp26036384.html" title="Function template string_sort">string_sort</a></code></code>
           to create a stack of depth <span class="emphasis"><em>m</em></span>. This problem isn't a
           realistic one on modern systems with multi-megabyte stacksize limits, where
           main memory would be exhausted holding the long strings necessary to exceed
-          the stacksize limit. <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp23596528.html" title="Function template string_sort">string_sort</a></code></code>
+          the stacksize limit. <code class="literal"><code class="computeroutput"><a class="link" href="../../../boost/sort/spreadsort/string_sort_idp26036384.html" title="Function template string_sort">string_sort</a></code></code>
           can be thought of as modernizing <a href="http://en.wikipedia.org/wiki/American_flag_sort" target="_top">American
           flag sort</a> to take advantage of <a href="http://en.wikipedia.org/wiki/Introsort" target="_top">introsort</a>
           as a fallback algorithm. In the author's testing, <a href="http://en.wikipedia.org/wiki/American_flag_sort" target="_top">American