15 | | --------------------------------------------------------------------------------------------------- |
16 | | == Boost.Algorithm.Sorting == |
17 | | * '''Author(s):''' Steven Ross |
18 | | * '''Version:''' |
19 | | * '''State:''' |
20 | | * '''Last upload:''' 2009 Jan 13 |
21 | | * '''Links:''' [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=algorithm_sorting.zip&directory=&PHPSESSID=96307fee8086c06036af42fae790b449 Bosst Vault] |
22 | | * '''Categories:''' [#Algorithm Algorithm] |
23 | | * '''Description:''' The Sorting Algorithm Library provides a generic implementation of high-speed sorting algorithms that outperform those in the C++ standard in both average and worst case performance. These algorithms only work on random access iterators. |
24 | | |
25 | | These algorithms are hybrids using both radix and comparison-based sorting, specialized to sorting common data types, such as integers, floats, and strings. These algorithms are encoded in a generic fashion and accept functors, enabling them to sort any object that can be processed like these basic data types. |
26 | | |
27 | | Unlike many radix-based algorithms, the underlying Spreadsort algorithm is designed around worst-case performance, and performs better on chunky data (where it is not widely distributed), so that on real data it can perform substantially better than on random data. Conceptually, Spreadsort can sort any data for which an absolute ordering can be determined. |