C++/Algorytmy w STL/Operacje wyszukiwania binarnego

lower_bound()

edytuj
lower_bound( iterator początek, iterator koniec, wartość )
lower_bound( iterator początek, iterator koniec, wartość, funkcja_porównująca )
Działanie
zwraca iterator do pierwszego elementu równego lub większego od wartość. Jest to pierwsze miejsce, w które można wstawić wartość aby zachować uporządkowanie ciągu.

upper_bound()

edytuj
upper_bound( iterator początek, iterator koniec, wartość )
upper_bound( iterator początek, iterator koniec, wartość, funkcja_porównująca )
Działanie
zwraca iterator do pierwszego elementu większego od wartość. Jest to ostatnie miejsce, w które można wstawić wartość aby zachować uporządkowanie ciągu.

binary_search()

edytuj
bool binary_search( iterator początek, iterator koniec, wartość )
bool binary_search( iterator początek, iterator koniec, wartość, funkcja_porównująca )
Działanie
zwraca prawdę jeśli wartość znajduje się w ciągu (działa w czasie logarytmicznym).

equal_range()

edytuj
pair<> equal_range( iterator początek, iterator koniec, wartość )
pair<> equal_range( iterator początek, iterator koniec, wartość, funkcja_porównująca )
Działanie
zwraca parę określającą przedział wewnątrz którego występuje dana wartość (lub ich ciąg), para złożoną z wartości odpowiednio lower_bound i upper_bound.