.. _sprout-algorithm: ############################################################################### Sprout.Algorithm ############################################################################### .. toctree:: :hidden: all_of all_of_equal any_of any_of_equal none_of none_of_equal one_of one_of_equal find find_if find_if_not find_end find_first_of adjacent_find count count_if mismatch equal is_permutation search search_n is_sorted is_sorted_until is_increasing is_decreasing is_strictly_increasing is_strictly_decreasing lower_bound upper_bound equal_range binary_search is_heap is_heap_until min max minmax min_element max_element minmax_element lexicographical_compare tristate_lexicographical_compare clamp .. _sprout-algorithm-non_modifying: ******************************************************************************* Non-modifying sequence operations ******************************************************************************* .. csv-table:: :header: function :widths: 4, 8 :doc:`all_of <./all_of>`, "" :doc:`all_of_equal <./all_of_equal>`, "" :doc:`any_of <./any_of>`, "" :doc:`any_of_equal <./any_of_equal>`, "" :doc:`none_of <./none_of>`, "" :doc:`none_of_equal <./none_of_equal>`, "" :doc:`one_of <./one_of>`, "" :doc:`one_of_equal <./one_of_equal>`, "" :doc:`find <./find>`, "" :doc:`find_if <./find_if>`, "" :doc:`find_if_not <./find_if_not>`, "" :doc:`find_end <./find_end>`, "" :doc:`find_first_of <./find_first_of>`, "" :doc:`adjacent_find <./adjacent_find>`, "" :doc:`count <./count>`, "" :doc:`count_if <./count_if>`, "" :doc:`mismatch <./mismatch>`, "" :doc:`equal <./equal>`, "" :doc:`is_permutation <./is_permutation>`, "" :doc:`search <./search>`, "" :doc:`search_n <./search_n>`, "" .. _sprout-algorithm-non_modifying-sorting: Sorting ======================================== .. csv-table:: :header: function :widths: 4, 8 :doc:`is_sorted <./is_sorted>`, "" :doc:`is_sorted_until <./is_sorted_until>`, "" :doc:`is_increasing <./is_increasing>`, "" :doc:`is_decreasing <./is_decreasing>`, "" :doc:`is_strictly_increasing <./is_strictly_increasing>`, "" :doc:`is_strictly_decreasing <./is_strictly_decreasing>`, "" .. _sprout-algorithm-non_modifying-binary: Binary search ======================================== .. csv-table:: :header: function :widths: 4, 8 :doc:`lower_bound <./lower_bound>`, "" :doc:`upper_bound <./upper_bound>`, "" :doc:`equal_range <./equal_range>`, "" :doc:`binary_search <./binary_search>`, "" .. _sprout-algorithm-non_modifying-heap: Heap operations ======================================== .. csv-table:: :header: function :widths: 4, 8 :doc:`is_heap <./is_heap>`, "" :doc:`is_heap_until <./is_heap_until>`, "" .. _sprout-algorithm-non_modifying-minmax: Minimum and maximum ======================================== .. csv-table:: :header: function :widths: 4, 8 :doc:`min <./min>`, "" :doc:`max <./max>`, "" :doc:`minmax <./minmax>`, "" :doc:`min_element <./min_element>`, "" :doc:`max_element <./max_element>`, "" :doc:`minmax_element <./minmax_element>`, "" .. _sprout-algorithm-non_modifying-lexicographical: Lexicographical comparison ======================================== .. csv-table:: :header: function :widths: 4, 8 :doc:`lexicographical_compare <./lexicographical_compare>`, "" :doc:`tristate_lexicographical_compare <./tristate_lexicographical_compare>`, "" .. _sprout-algorithm-non_modifying-clamp: Clamp algorithm ======================================== .. csv-table:: :header: function :widths: 4, 8 :doc:`clamp <./clamp>`, "" Header ======================================== ``sprout/algorithm.hpp``