關於C STL中的lower bound用法

2021-08-24 23:42:12 字數 492 閱讀 7454

int t=lower_bound(a+l,a+r,m)-a

在公升序排列的a陣列內二分查詢[l,r)區間內的值為m的元素。返回m在陣列中的下標

1.如果m在區間中沒有出現過,那麼返回第乙個比m大的數的下標。

2.如果m比所有區間內的數都大,那麼返回r。這個時候會越界,小心

3.如果區間內有多個相同的m,返回第乙個m的下標。

4.時間複雜度:一次查詢o(log n),n為陣列長度。

注意:m可以是pair等等。還有下標從0開始還是從1開始。

#includeusing namespace std;

int a[1000010],t,n,l,r;

int main()

return 0;

}

C STL中的容器

用c 寫資料結構習題也有一段時間了,不得不說stl容器對資料結構真的很有用。c stl standard template library,標準模板庫 是一套功能強大的 c 模板類,其中包含4個元件,分別為演算法 容器 函式 迭代器。所以想總結一下自己用的容器,為什麼要用它以及怎麼用?c c 原生的...

C STL中的函式

標頭檔案 algorithm 中有很多好用的函式 max a,b 返回a和b中的最大值,引數可以是浮點數 min a,b 返回a和b中的最小值,引數可以是浮點數 tolower char ch 將字元型變數ch的大寫轉換為小寫,其他不變 toupper char ch 將字元型變數ch的小寫轉換為大...

c STL中的容器

容器作為stl的重要組成部分,其主要包括兩大類 順序容器 和 關聯容器 雖說這二者都是用來儲存資料的資料結構,但是他們的底層實現和特長有很大差別 關聯容器有8種 1 map 紅黑樹 2 set 紅黑樹 3 multimap 紅黑樹 4 multiset 紅黑樹 5 unordered map 雜湊表...