一些好用的c STL庫函式

2021-09-25 15:37:59 字數 2228 閱讀 3252

stl可以說是懶癌患者福利了// 持續更新(隨緣更新 )

bool

next_permutation

(iterator start,iterator end)

該函式的作用是求全排列的下一項(這裡其實還有乙個prev_permutation函式是求上一項的,除此之外用法相同)這裡的下一項指的是字典序列的下一項,如果存在下一項函式的返回值是true,不存在下一項返回false

#include

#include

using

namespace std;

intmain()

;dowhile

(next_permutation

(num,num+3)

);return0;

}

這裡對a,b,c進行全排列

=;我們把num陣列初始化過程中的a和b調換位置之後輸出結果變為

貼個例子吧

int

cmp(

char a,

char b)

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

typedef

long

long ll;

#define maxn 500010

using

namespace std;

int a[

10010];

intmain()

lower_bound( begin,end,num):從陣列的begin位置到end-1位置二分查詢第乙個大於或等於num的數字,找到返回該數字的位址,不存在則返回end。通過返回的位址減去起始位址begin,得到找到數字在陣列中的下標。

upper_bound( begin,end,num):從陣列的begin位置到end-1位置二分查詢第乙個大於num的數字,找到返回該數字的位址,不存在則返回end。通過返回的位址減去起始位址begin,得到找到數字在陣列中的下標。

在從大到小的排序陣列中,過載lower_bound()和upper_bound()

lower_bound( begin,end,num,greater() ):從陣列的begin位置到end-1位置二分查詢第乙個小於或等於num的數字,找到返回該數字的位址,不存在則返回end。通過返回的位址減去起始位址begin,得到找到數字在陣列中的下標。

upper_bound( begin,end,num,greater() ):從陣列的begin位置到end-1位置二分查詢第乙個小於num的數字,找到返回該數字的位址,不存在則返回end。通過返回的位址減去起始位址begin,得到找到數字在陣列中的下標。

lower_bound(val):返回容器中第乙個值【大於或等於】val的元素的iterator位置。

功能:函式lower_bound()在first和last中的前閉後開區間進行二分查詢,返回大於或等於val的第乙個元素位置。如果所有元素都小於val,則返回last的位置.

注意:如果所有元素都小於val,則返回last的位置,且last的位置是越界的!!

upper_bound(val):返回容器中第乙個值【大於】val的元素的iterator位置。

功能:函式upper_bound()返回的在前閉後開區間查詢的關鍵字的上界,返回大於val的第乙個元素位置

注意:返回查詢元素的最後乙個可安插位置,也就是「元素值》查詢值」的第乙個元素的位置。同樣,如果val大於陣列中全部元素,返回的是last。(注意:陣列下標越界)

c stl 一些東西

std map 其key是基於比較運算子的,因此自定義型別需要為該型別設定比較運算子操作 class a private int mm std mapkk std unordered map 基於hash實現,需要為自定義型別設定 運算子和雜湊函式 class a int get value con...

C STL的一些歸納

一 vector使用 之前c語 int arr 定義陣列,它的缺點是陣列的 度不能隨 所欲的改變,c 有 能完全替代陣列的動態陣列 vector它能夠在運 階段設定陣列的 度 在末尾增加新的資料 在中間插 新的值 度意被改變,很好 它在頭 件 vector 也在命名空間 std 所以使 的時候要引 ...

一些好用的外掛程式

atom one dark theme 好看的主題 atom one light theme 護眼主題 bookmarks 標記,方便查詢 指令 shift cmd k bracket pair colorizer 2 相鄰括號顏色不同,方便查詢 作用域範圍,可以與任何主題使用 code runne...