1.lower_bound() 二分查找 (1044)
- 功能:函數lower_bound()在first和last中的前閉後開區間進行二分查找,返回大於或等於val的第一個元素位置。如果所有元素都小於val,則返回last的位置.注意:如果所有元素都小於val,則返回last的位置,且last的位置是越界的!
- 關於前閉後開:想要使用二分法查找某個閉合區間[a,b],如果使用lower_bound()函數,那麼一定要注意,最後要加1, lower_bound(a,b+1,x)
2.upper_bound() 二分查找
- 功能:函數upper_bound()返回的在前閉後開區間查找的關鍵字的上界,返回大於val的第一個元素位置
注意:返回查找元素的最後一個可安插位置,也就是“元素值>查找值”的第一個元素的位置。同樣,如果val大於數組中全部元素,返回的是last。(注意:數組下標越界)
-
注意點和上面的lower_bound()是一樣的