標頭檔案algorithm中的常用函式

2021-09-07 11:47:49 字數 2926 閱讀 7333

迴圈         對序列中的每個元素執行某操作         for_each()

查詢         在序列中找出某個值的第一次出現的位置         find()

在序列中找出符合某謂詞的第乙個元素     find_if()

在序列中找出一子串行的最後一次出現的位置         find_end()

在序列中找出第一次出現指定值集中之值的位置     find_first_of()

在序列中找出相鄰的一對值         adjacent_find()

計數         在序列中統計某個值出現的次數         count()

在序列中統計與某謂詞匹配的次數     count_if()

比較         找出兩個序列相異的第乙個元素         mismatch()

兩個序列中的對應元素都相同時為真         equal()

搜尋         在序列中找出一子串行的第一次出現的位置     search()

在序列中找出一值的連續n次出現的位置          search_n()

複製         從序列的第乙個元素起進行複製         copy()

從序列的最後乙個元素起進行複製     copy_backward()

交換         交換兩個元素         swap()

交換指定範圍的元素     swap_ranges()

交換由迭代器所指的兩個元素     iter_swap()

變換         將某操作應用於指定範圍的每個元素         transform()

替換         用乙個給定值替換一些值     replace()

替換滿足謂詞的一些元素     replace_if()

複製序列時用一給定值替換元素         replace_copy()

複製序列時替換滿足謂詞的元素         replace_copy_if()

填充         用一給定值取代所有元素     fill()

用一給定值取代前n個元素          fill_n()

生成         用一操作的結果取代所有元素     generate()

用一操作的結果取代前n個元素          generate_n()

刪除         刪除具有給定值的元素         remove()

刪除滿足謂詞的元素     remove_if()

複製序列時刪除具有給定值的元素     remove_copy()

複製序列時刪除滿足謂詞的元素         remove_copy_if()

唯一         刪除相鄰的重複元素     unique()

複製序列時刪除相鄰的重複元素         unique_copy()

反轉         反轉元素的次序     reverse()

複製序列時反轉元素的次序         reverse_copy()

環移         迴圈移動元素         rotate()

複製序列時迴圈移動元素     rotate_copy()

隨機         採用均勻分布來隨機移動元素     random_shuffle()

劃分         將滿足某謂詞的元素都放到前面         partition()

將滿足某謂詞的元素都放到前面並維持原順序         stable_partition()

排序         以很好的平均效率排序         sort()

排序,並維持相同元素的原有順序     stable_sort()

將序列的前一部分排好序     partial_sort()

複製的同時將序列的前一部分排好序         partial_sort_copy()

第n個元素     將第n各元素放到它的正確位置          nth_element()

二分檢索         找到大於等於某值的第一次出現         lower_bound()

找到大於某值的第一次出現         upper_bound()

找到(在不破壞順序的前提下)可插入給定值的最大範圍     equal_range()

在有序序列中確定給定元素是否存在         binary_search()

歸併         歸併兩個有序序列         merge()

歸併兩個接續的有序序列     inplace_merge()

有序結構上的集合操作         一串行為另一串行的子串行時為真     includes()

構造兩個集合的有序並集     set_union()

構造兩個集合的有序交集     set_intersection()

構造兩個集合的有序差集     set_difference()

構造兩個集合的有序對稱差集(並-交)   set_symmetric_difference()

堆操作     向堆中加入元素     push_heap()

從堆中彈出元素     pop_heap()

從序列構造堆         make_heap()

給堆排序         sort_heap()

最大和最小     兩個值中較小的     min()

兩個值中較大的     max()

序列中的最小元素         min_element()

序列中的最大元素         max_element()

詞典比較         兩個序列按字典序的第乙個在前         lexicographical_compare()

排列生成器     按字典序的下乙個排列         next_permutation()

按字典序的前乙個排列         prev_permutation()

參照部落格:

c 中algorithm標頭檔案

包含了stl中的許多泛型演算法 可以呼叫一些函式,如 int count i being,i end,t x 使用非自己定義的泛型演算法,則要包含該標頭檔案,裡面定義了一些泛型演算法,比如說排序之類的stl的演算法部分,裡邊定義了各種演算法,比如sort之類的。加上algorithm就可以使用stl...

演算法筆記6 9 algorithm標頭檔案下常用函式

目錄 1.max min abs 2.max element 和min element 求陣列集合以及結構體中最大最小值 3.swap x,y 其實不在algorithm裡 4.reverse 5.next permutation 6.fill 7.sort 8.lower bound 和upper...

C 標頭檔案系列 algorithm

algorithm標頭檔案是c 的標準演算法庫,它主要應用在容器上。因為所有的演算法都是通過迭代器進行操作的,所以演算法的運算實際上是和具體的資料結構相分離的,也就是說,具有低耦合性。因此,任何資料結構都能使用這套演算法庫,只要它具有相應的迭代器型別。如上圖所示,庫中的演算法主要分為4類 用過這個演...