<algorithm>
The header <algorithm> defines a collection of functions especially designed to be used
on ranges of elements.
头文件<algorithm>定义了集合的算法,特别是范围内的元素的算法。
A range is any sequence of objects that can be accessed through iterators or pointers, such as an array or an instance of some of the STL
containers. Notice though, that algorithms operate through iterators directly on the values, not affecting in any way the structure of any possible container (it never affects the size or storage
allocation of the container).
一个范围是指一个能够通过迭代器或者指针访问的序列容器,例如一个数组或者是STL containers的一个实例。需要注意的是,algorithm直接通过迭代器操作值,不会以任何方式影响容器的结构。(不会影响其大小或者内存分配)
Functions in <algorithm>
Non-modifying sequence operations:
- all_of
- Test condition on all elements in range (function template )
- any_of
- Test if any element in range fulfills condition (function template )
- none_of
- Test if no elements fulfill condition (function template )
- for_each
- Apply function to range (function template )
- find
- Find value in range (function template )
- find_if
Find eleme
nt in range (function template )
- find_if_not
- Find element in range (negative condition) (function template )
- find_end
- Find last subsequence in range (function template )
- find_first_of
- Find element from set in range (function template )
- adjacent_find
- Find equal adjacent elements in range (function template )
- count
- Count appearances of value in range (function template )
- count_if
- Return number of elements in range satisfying condition (function template )
- mismatch
- Return first position where two ranges differ (function template )
- equal
- Test whether the elements in two ranges are equal (function template )
- is_permutation
- Test whether range is permutation of another (function template )
- search
- Search range for subsequence (function template )
- search_n
- Search range for elements (function template )
Modifying sequence operations:
- copy
- Copy range of elements (function template )
- copy_n
- Copy elements (function template )
- copy_if
- Copy certain elements of range (function template )
- copy_backward
- Copy range of elements backward (function template )
- move
- Move range of elements (function template )
- move_backward
- Move range of elements backward (function template )
- swap
- Exchange values of two objects (function template )
- swap_ranges
- Exchange values of two ranges (function template )
- iter_swap
- Exchange values of objects pointed by two iterators (function template )
- transform
- Transform range (function template )
- replace
- Replace value in range (function template )
- replace_if
- Replace values in range (function template )
- replace_copy
- Copy range replacing value (function template )
- replace_copy_if
- Copy range replacing value (function template )
- fill
- Fill range with value (function template )
- fill_n
- Fill sequence with value (function template )
- generate
- Generate values for range with function (function template )
- generate_n
- Generate values for sequence with function (function template )
- remove
- Remove value from range (function template )
- remove_if
- Remove elements from range (function template )
- remove_copy
- Copy range removing value (function template )
- remove_copy_if
- Copy range removing values (function template )
- unique
- Remove consecutive duplicates in range (function template )
- unique_copy
- Copy range removing duplicates (function template )
- reverse
- Reverse range (function template )
- reverse_copy
- Copy range reversed (function template )
- rotate
- Rotate left the elements in range (function template )
- rotate_copy
- Copy range rotated left (function template )
- random_shuffle
- Randomly rearrange elements in range (function template )
- shuffle
- Randomly rearrange elements in range using generator (function template )
Partitions:
- is_partitioned
- Test whether range is partitioned (function template )
- partition
- Partition range in two (function template )
- stable_partition
- Partition range in two – stable ordering (function template )
- partition_copy
- Partition range into two (function template )
- partition_point
- Get partition point (function template )
Sorting:
- sort
- Sort elements in range (function template )
- stable_sort
- Sort elements preserving order of equivalents (function template )
- partial_sort
- Partially sort elements in range (function template )
- partial_sort_copy
- Copy and partially sort range (function template )
- is_sorted
- Check whether range is sorted (function template )
- is_sorted_until
- Find first unsorted element in range (function template )
- nth_element
- Sort element in range (function template )
Binary search (operating on partitioned/sorted ranges):
- lower_bound
- Return iterator to lower bound (function template )
- upper_bound
- Return iterator to upper bound (function template )
- equal_range
- Get subrange of equal elements (function template )
- binary_search
- Test if value exists in sorted sequence (function template )
Merge (operating on sorted ranges):
- merge
- Merge sorted ranges (function template )
- inplace_merge
- Merge consecutive sorted ranges (function template )
- includes
- Test whether sorted range includes another sorted range (function template )
- set_union
- Union of two sorted ranges (function template )
- set_intersection
- Intersection of two sorted ranges (function template )
- set_difference
- Difference of two sorted ranges (function template )
- set_symmetric_difference
- Symmetric difference of two sorted ranges (function template )
Heap:
- push_heap
- Push element into heap range (function template )
- pop_heap
- Pop element from heap range (function template )
- make_heap
- Make heap from range (function template )
- sort_heap
- Sort elements of heap (function template )
- is_heap
- Test if range is heap (function template )
- is_heap_until
- Find first element not in heap order (function template )
Min/max:
- min
- Return the smallest (function template )
- max
- Return the largest (function template )
- minmax
- Return smallest and largest elements (function template )
- min_element
- Return smallest element in range (function template )
- max_element
- Return largest element in range (function template )
- minmax_element
- Return smallest and largest elements in range (function template )
Other:
- lexicographical_compare
- Lexicographical less-than comparison (function template )
- next_permutation
- Transform range to next permutation (function template )
- prev_permutation
Transform range to previous permutation (function template )
//翻译的不好的地方请多多指导,可以在下面留言或者点击左上方邮件地址给我发邮件,指出我的错误以及不足,以便我修改,更好的分享给大家,谢谢。
转载请注明出处:http://blog.csdn.net/qq844352155
2014-8-19
于GDUT