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.