algorithm(計算機術語)

algorithm(計算機術語)

本詞條是多義詞,共2個義項
更多義項 ▼ 收起列表 ▲

algorithm意為"算法",是C++的標準模版庫(STL)中最重要的頭檔案之一,提供了大量基於疊代器的非成員模板函式。

基本介紹

  • 中文名:算法; 運算法則; 計算程式;
  • 外文名:algorithm
  • 程式語言:C++
  • 類別:C++標準庫
  • 頭檔案:#include <algorithm>
  • 命名空間:using namespace std;
不修改內容,修改內容操作,劃分操作,排序操作,查找操作,集合操作,堆操作,最大最小操作,

不修改內容

adjacent_find
查找兩個相鄰(Adjacent)的等價(Identical)元素
all_of
檢測在給定範圍中是否所有元素都滿足給定的條件
any_of
檢測在給定範圍中是否存在元素滿足給定條件
count
返回值等價於給定值的元素的個數
count_if
返回值滿足給定條件的元素的個數
返回兩個範圍是否相等
返回第一個值等價於給定值的元素
find_end
查找範圍A中與範圍B等價的子範圍最後出現的位置
find_first_of
查找範圍A中第一個與範圍B中任一元素等價的元素的位置
find_if
返回第一個值滿足給定條件的元素
find_if_not
返回第一個值不滿足給定條件的元素
for_each
對範圍中的每個元素調用指定函式
mismatch
返回兩個範圍中第一個元素不等價的位置
none_of
檢測在給定範圍中是否不存在元素滿足給定的條件
在範圍A中查找第一個與範圍B等價的子範圍的位置
search_n
在給定範圍中查找第一個連續n個元素都等價於給定值的子範圍的位置

修改內容操作

將一個範圍中的元素拷貝到新的位置處
copy_backward
將一個範圍中的元素按逆序拷貝到新的位置處
copy_if
將一個範圍中滿足給定條件的元素拷貝到新的位置處
copy_n
拷貝 n 個元素到新的位置處
將一個範圍的元素賦值為給定值
fill_n
將某個位置開始的 n 個元素賦值為給定值
將一個函式的執行結果保存到指定範圍的元素中,用於批量賦值範圍中的元素
generate_n
將一個函式的執行結果保存到指定位置開始的 n 個元素中
iter_swap
交換兩個疊代器(Iterator)指向的元素
move
將一個範圍中的元素移動到新的位置處
move_backward
將一個範圍中的元素按逆序移動到新的位置處
random_shuffle
隨機打亂指定範圍中的元素的位置
將一個範圍中值等價於給定值的元素刪除
remove_if
將一個範圍中值滿足給定條件的元素刪除
remove_copy
拷貝一個範圍的元素,將其中值等價於給定值的元素刪除
remove_copy_if
拷貝一個範圍的元素,將其中值滿足給定條件的元素刪除
將一個範圍中值等價於給定值的元素賦值為新的值
replace_copy
拷貝一個範圍的元素,將其中值等價於給定值的元素賦值為新的值
replace_copy_if
拷貝一個範圍的元素,將其中值滿足給定條件的元素賦值為新的值
replace_if
將一個範圍中值滿足給定條件的元素賦值為新的值
反轉排序指定範圍中的元素
reverse_copy
拷貝指定範圍的反轉排序結果
循環移動指定範圍中的元素
rotate_copy
拷貝指定範圍的循環移動結果
用指定的隨機數引擎隨機打亂指定範圍中的元素的位置
swap
交換兩個對象的值
swap_ranges
交換兩個範圍的元素
對指定範圍中的每個元素調用某個函式以改變元素的值
unique
刪除指定範圍中的所有連續重複元素,僅僅留下每組等值元素中的第一個元素。
unique_copy
拷貝指定範圍的唯一化(參考上述的 unique)結果

劃分操作

is_partitioned
檢測某個範圍是否按指定謂詞(Predicate)劃分過
將某個範圍劃分為兩組
partition_copy
拷貝指定範圍的劃分結果
partition_point
返回被劃分範圍的劃分點
stable_partition
穩定劃分,兩組元素各維持相對順序

排序操作

is_sorted
檢測指定範圍是否已排序
is_sorted_until
返回最大已排序子範圍
nth_element
部分排序指定範圍中的元素,使得範圍按給定位置處的元素劃分
partial_sort
部分排序
partial_sort_copy
拷貝部分排序的結果
排序
stable_sort
穩定排序

查找操作

binary_search
判斷範圍中是否存在值等價於給定值的元素
equal_range
返回範圍中值等於給定值的元素組成的子範圍
lower_bound
返回指向範圍中第一個值大於或等於給定值的元素的疊代器
upper_bound
返回指向範圍中第一個值大於給定值的元素的疊代器

集合操作

includes
判斷一個集合是否是另一個集合的子集
inplace_merge
就緒合併
合併
set_difference
獲得兩個集合的差集
set_intersection
獲得兩個集合的交集
set_symmetric_difference
獲得兩個集合的對稱差
set_union
獲得兩個集合的並集

堆操作

is_heap
檢測給定範圍是否滿足堆結構
is_heap_until
檢測給定範圍中滿足堆結構的最大子範圍
make_heap
用給定範圍構造出一個堆
pop_heap
從一個堆中刪除最大的元素
push_heap
向堆中增加一個元素
sort_heap
將滿足堆結構的範圍排序

最大最小操作

is_permutation
判斷一個序列是否是另一個序列的一種排序
lexicographical_compare
比較兩個序列的字典序
max
返回兩個元素中值最大的元素
max_element
返回給定範圍中值最大的元素
返回兩個元素中值最小的元素
min_element
返回給定範圍中值最小的元素
minmax
返回兩個元素中值最大及最小的元素
minmax_element
返回給定範圍中值最大及最小的元素
next_permutation
返回給定範圍中的元素組成的下一個按字典序的排列
返回給定範圍中的元素組成的上一個按字典序的排列

相關詞條

熱門詞條

聯絡我們