algorithm下的常用函式

2021-10-02 13:03:46 字數 1031 閱讀 7673

swap(x,y)交換x和y的值

reverse(it,it2)可以將陣列指標在[it,it2)之間的元素或者容器的迭代器在[it,it2)範圍內進行元素反轉。

對於陣列中的元素

# include # include using namespace std;

int main(void)

; reverse(a,a+4);//將a[0]~a[3]逆轉

for(int i=0;i<5;i++);do

;fill(a,a+5,233);//將a[0]~a[4]全部賦值為233

sort(首位址(必填),尾位址的後乙個位址(必填),比較函式(非必填))

int a[6]=;

sort(a,a+4);//對a[0]~a[3]進行排序

基本排序

如果不填比較函式,會自動從小到大進行排序

規定比較函式排序

bool cmp(int a,int b)

int a[6]=;

sort(a,a+4,cmp);

結構體排序
struct nodessd[10];

bool cmp1(node a,node b)

bool cmp2(node a,node b);

sort(str,str+3);//按照字典序進行排序

按照字串長度進行排序
bool cmp(string a,string b)

sort(str,str+3,cmp);

lower_bound()需要乙個有序容器或者陣列,其尋找[first,end)範圍內第乙個大於等於val的元素的位置,如果是陣列就返回指標,如果是容器就返回迭代器

upper_bound()需要乙個有序容器或者陣列,其尋找[first,end)範圍內第乙個大於val的元素的位置,如果是陣列就返回指標,如果是容器就返回迭代器

algorithm標頭檔案下的常用函式

algorithm標頭檔案下的常用函式 1.max min abs 和swap 使用例項 include includeusing namespace std int main 執行結果 1 2 1 2 2 1 2.reverse 使用例項1 include includeusing namespa...

algorithm標頭檔案下的常用函式

lower bound 和upper bound max element min element max x,y min x,y 分別訪問x和y的最大值和最小值,且引數必須是兩個。如果想返回三個數x y z的最大值,可以使用max x,max y,z 的寫法.abs x 返回x的絕對值。注意 x必須...

algorithm常用庫函式

algorithm常用庫函式 accumulate 累加序列的所有元素 adjacent difference 計算序列中的相鄰元素是否不同 adjacent find 查詢相鄰的兩個相同 或者有其他關聯 元素 any of 如果對於任意元素的謂詞測試都為true,則返回true c 11 all ...