STL基本演算法

2021-08-27 17:26:19 字數 1863 閱讀 6185

equal: 判斷兩個區間是否相等

fill: 改填元素值

fill_n: 改填元素值,n次

iter_swap: 元素互換

lexigicographical_compare: 以字典順序進行比較

max: 最大值

min: 最小值

mismatch: 找出不匹配點

swap: 交換元素

set_union: 並集

set_intersection: 交集

set_difference: 差集

set_symmetric_difference: 對稱差集(s1-s2)u (s2-s1)

make_heap(): 建堆

pop_heap(): 出堆

push_heap(): 插入堆

sort_heap(): 堆排序

adjacent_find: 查詢相鄰而重複(或符合某條件)的元素

count: 計數

count_if: 在特定條件下計數

find: 循序查詢

find_if: 循序查詢符合特定條件者

find_end: 查詢某個子串行的最後一次出現點

find_first_of: 查詢某些元素的首次出現點

generate: 以特定操作的運算結果填充特定區間內的元素

generate_n: 以特定操作的運算結果填充n個元素內容

includes: 是否涵蓋與某序列之中

max_element: 在大致所在位置

merge: 合併兩個序列

min_element: 最小值所在位置

partition: 分割

remove: 刪除某類元素(但不刪除)

remove_copy: 刪除某類元素並將結果複製到另一容器

remove_if: 有條件的刪除某類元素

remove_copy_if 有條件的刪除某類元素將結果複製到另一容器

replace: 替換某類元素

replace_copy: 替換某類元素並將結果複製到另一容器

replace_if: 有條件的替換某類元素

replace_copy_if: 有條件的替換某類元素並將結果複製到另一容器

reverse: 反轉元素次序

reverse_copy: 反轉元素次序並將結果複製到另一容器

rotate; 旋轉

rotate_copy: 旋轉,並將結果複製到另一容器

search: 查詢某個子串行

search_n: 查詢」連續發生n次」的子串行

swap_ranges: 交換指定區間

transform: 以兩個序列為基礎,互動作用差生第三個序列

unique: 將重複的元素摺疊縮編,使成為唯一

unique_copy: 將重複的元素摺疊縮編,使成為唯一,並複製到他處

lower_bound: 「將指定元素插入區間內而不影響的原本排序」的最低位置(二分法查詢的乙個版本)

upper_bound: 「將指定元素插入區間內而不影響的原本排序」的最高位置(二分法查詢的乙個版本)

binary_search: 二分查詢

next_permutation: 獲得下乙個排列組合

prev_permutation: 獲得上乙個排列組合

random_shuffle: 隨機重排元素

partial_sort: 區域性排序(利用最大堆性質)

partial_sort_copy: 區域性排序(利用最大堆性質)並複製到他處

equal_range: 試圖在有序區間中尋找某值(返回乙個上下限區間)

inplace_merge: 合併並就地替換(覆蓋上去)

nth_element: 重新安排序列中的第n個元素的左右兩端

STL 基本演算法

該函式用於判斷兩個指定區間內的資料是否相等,若第二個區間較長,則多處部分不予考慮,因此,若要保證兩個序列相等則應先判斷其元素個數是否相同。其實現較簡單,沒有過多好說的。fill函式使用指定值填充目標區間,其填充過程是通過呼叫賦值運算子來進行的,fill n與fill類似,只是其填充的是區間的前n個元...

演算法入門基礎 STL基本介紹

stl standard template library 即標準模板庫,是乙個具有工業強度的,高效的c 程式庫。它被容納於c 標準程式庫 c standard library 中,是ansi iso c 標準中最新的也是極具革命性的一部分。該庫包含了諸多在電腦科學領域裡所常用的基本資料結構和基本演...

基本STL操作

map是一種鍵值對容器。特點 鍵唯一且基本資料型別按從小到大公升序排列。使用方法如下 include 輸入輸出標頭檔案 include map標頭檔案 using namespace std 命名空間 map m 宣告乙個名為m的map int main count方式判斷元素是否存在 if m.c...