STL’s binary_search() algorithm traverses a sequence and returns a Boolean value indicating whether the sought-after element exists in that sequence. binary_search() is declared in the header
bool binary_search (ForwardIterator first, ForwardIterator last, const T& value)
binary_search() takes two forward iterators that mark the sequence’s bounds, and the sought-after value as the third argument. It returns true if the sought-after value exists in the sequence, or false otherwise. In the following example, binary_search() checks whether the integers 5 and 0 exist in a vector of integers:
#include #include using namespace std;int main(){ int arr[5] = {1,3,4,5,5}; // set a vector from the array vector vi(arr, arr+5); // search for 5 and 0 in the vector bool found = binary_search(vi.begin(), vi.end(), 5);// true found = binary_search(vi.begin(), vi.end(), 0);// false}