| 
    Simple Application Framework
    1
    
   
   | 
  
  
  
 
Sorting algorithms. More...
Functions | |
| template<class FwdIter , class Pred > | |
| void | BubbleSort (FwdIter begin, FwdIter end, Pred pred) | 
Sort the sequence [begin, end) according to pred using the bubble sort algorithm.   | |
| template<class FwdIter > | |
| void | BubbleSort (FwdIter begin, FwdIter end) | 
Sort the sequence [begin, end) from smallest to largest elements using the bubble sort algorithm.   | |
| template<class FwdIter , class Pred > | |
| void | HeapSort (FwdIter begin, FwdIter end, Pred pred) | 
Sort the sequence [begin, end) according to pred using the heap sort algorithm.   | |
| template<class FwdIter > | |
| void | HeapSort (FwdIter begin, FwdIter end) | 
Sort the sequence [begin, end) from smallest to largest elements using the heap sort algorithm.   | |
| template<class Iter , class Pred > | |
| void | InsertionSort (Iter begin, Iter end, Pred pred) | 
Sort the sequence [begin, end) according to pred using the insertion sort algorithm.   | |
| template<class Iter > | |
| void | InsertionSort (Iter begin, Iter end) | 
Sort the sequence [begin, end) from smallest to largest elements using the insertion sort algorithm.   | |
| template<class RanIter , class Pred > | |
| void | IntroSort (RanIter begin, RanIter end, Pred pred) | 
Sort sequence [begin, end) according to pred using the introspective sorting algorithm.   | |
| template<class RanIter > | |
| void | IntroSort (RanIter begin, RanIter end) | 
Sort the sequence [begin, end) from smallest to largest elements using the introspective sorting algorithm.   | |
| template<class BidIter , class Pred > | |
| void | MergeSort (BidIter begin, BidIter end, Pred pred) | 
| template<class BidIter , class Pred > | |
| void | MergeSortInPlace (BidIter begin, BidIter end, Pred pred) | 
Sort the sequence [begin, end) according to pred using the in-place mergesort sorting algorithm.   | |
| template<class BidIter > | |
| void | MergeSortInPlace (BidIter begin, BidIter end) | 
Sort the sequence [begin, end) from smallest to largest elements using the in-place mergesort sorting algorithm.   | |
| template<class RanIter , class Pred > | |
| void | QuickSort (RanIter begin, RanIter end, Pred pred) | 
Sort the sequence [begin, end) according to pred using the quicksort sorting algorithm.   | |
| template<class RanIter > | |
| void | QuickSort (RanIter begin, RanIter end) | 
Sort the sequence [begin, end) from smallest to largest elements using the quicksort sorting algorithm.   | |
| template<class RanIter , class Pred > | |
| void | Sort (RanIter begin, RanIter end, Pred pred) | 
Sort sequence [begin, end) according to pred using the default non-stable sorting algorithm.   | |
| template<class RanIter > | |
| void | Sort (RanIter begin, RanIter end) | 
Sort the sequence [begin, end) from smallest to largest elements using the default non-stable sorting algorithm.   | |
| template<class RanIter , class Pred > | |
| void | SortStable (RanIter begin, RanIter end, Pred pred) | 
Sort sequence [begin, end) according to pred using the default stable sorting algorithm.   | |
| template<class RanIter > | |
| void | SortStable (RanIter begin, RanIter end) | 
Sort the sequence [begin, end) from smallest to largest elements using the default stable sorting algorithm.   | |
Sorting algorithms.
| void Saf::Algo::Sort::BubbleSort | ( | FwdIter | begin, | 
| FwdIter | end, | ||
| Pred | pred | ||
| ) | 
Sort the sequence [begin, end) according to pred using the bubble sort algorithm. 
Properties:
 where 
.
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| [in] | pred | Binary comparison predicate. | 
| void Saf::Algo::Sort::BubbleSort | ( | FwdIter | begin, | 
| FwdIter | end | ||
| ) | 
Sort the sequence [begin, end) from smallest to largest elements using the bubble sort algorithm. 
Properties:
 where 
.
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| void Saf::Algo::Sort::HeapSort | ( | FwdIter | begin, | 
| FwdIter | end, | ||
| Pred | pred | ||
| ) | 
Sort the sequence [begin, end) according to pred using the heap sort algorithm. 
Properties:
 where 
.
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| [in] | pred | Binary comparison predicate. | 
| void Saf::Algo::Sort::HeapSort | ( | FwdIter | begin, | 
| FwdIter | end | ||
| ) | 
Sort the sequence [begin, end) from smallest to largest elements using the heap sort algorithm. 
Properties:
 where 
.
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| void Saf::Algo::Sort::InsertionSort | ( | Iter | begin, | 
| Iter | end, | ||
| Pred | pred | ||
| ) | 
Sort the sequence [begin, end) according to pred using the insertion sort algorithm. 
Properties:
 where 
.
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| [in] | pred | Binary comparison predicate. | 
| void Saf::Algo::Sort::InsertionSort | ( | Iter | begin, | 
| Iter | end | ||
| ) | 
Sort the sequence [begin, end) from smallest to largest elements using the insertion sort algorithm. 
Properties:
 where 
.
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| void Saf::Algo::Sort::IntroSort | ( | RanIter | begin, | 
| RanIter | end, | ||
| Pred | pred | ||
| ) | 
Sort sequence [begin, end) according to pred using the introspective sorting algorithm. 
Based on the paper:
Properties:
 where 
.
 where 
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| [in] | pred | Binary comparison predicate. | 
| void Saf::Algo::Sort::IntroSort | ( | RanIter | begin, | 
| RanIter | end | ||
| ) | 
Sort the sequence [begin, end) from smallest to largest elements using the introspective sorting algorithm. 
Based on the paper:
Properties:
 where 
.
 where 
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| void Saf::Algo::Sort::MergeSort | ( | BidIter | begin, | 
| BidIter | end, | ||
| Pred | pred | ||
| ) | 
| void Saf::Algo::Sort::MergeSortInPlace | ( | BidIter | begin, | 
| BidIter | end, | ||
| Pred | pred | ||
| ) | 
Sort the sequence [begin, end) according to pred using the in-place mergesort sorting algorithm. 
Properties:
 where 
.
 where 
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| [in] | pred | Binary comparison predicate. | 
| void Saf::Algo::Sort::MergeSortInPlace | ( | BidIter | begin, | 
| BidIter | end | ||
| ) | 
Sort the sequence [begin, end) from smallest to largest elements using the in-place mergesort sorting algorithm. 
Properties:
 where 
.
 where 
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| void Saf::Algo::Sort::QuickSort | ( | RanIter | begin, | 
| RanIter | end, | ||
| Pred | pred | ||
| ) | 
Sort the sequence [begin, end) according to pred using the quicksort sorting algorithm. 
Properties:
 where 
.
 where 
.
 where 
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| [in] | pred | Binary comparison predicate. | 
| void Saf::Algo::Sort::QuickSort | ( | RanIter | begin, | 
| RanIter | end | ||
| ) | 
Sort the sequence [begin, end) from smallest to largest elements using the quicksort sorting algorithm. 
Properties:
 where 
.
 where 
.
 where 
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| void Saf::Algo::Sort::Sort | ( | RanIter | begin, | 
| RanIter | end, | ||
| Pred | pred | ||
| ) | 
Sort sequence [begin, end) according to pred using the default non-stable sorting algorithm. 
Properties:
 where 
.
 where 
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| [in] | pred | Binary comparison predicate. | 
| void Saf::Algo::Sort::Sort | ( | RanIter | begin, | 
| RanIter | end | ||
| ) | 
Sort the sequence [begin, end) from smallest to largest elements using the default non-stable sorting algorithm. 
Properties:
 where 
.
 where 
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| void Saf::Algo::Sort::SortStable | ( | RanIter | begin, | 
| RanIter | end, | ||
| Pred | pred | ||
| ) | 
Sort sequence [begin, end) according to pred using the default stable sorting algorithm. 
Properties:
 where 
.
 where 
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
| [in] | pred | Binary comparison predicate. | 
| void Saf::Algo::Sort::SortStable | ( | RanIter | begin, | 
| RanIter | end | ||
| ) | 
Sort the sequence [begin, end) from smallest to largest elements using the default stable sorting algorithm. 
Properties:
 where 
.
 where 
.| [in] | begin | Iterator to the beginning of the sequence. | 
| [in] | end | Iterator to the end of the sequence. | 
 1.8.0