cpp/algorithm/ranges/search

@1@ Searches for the first occurrence of the sequence of elements in the range. Elements are compared using binary predicate after being projected with  and, respectively.

@2@ Same as, but uses as the first source range and  as the second source range, as if using  as ,  as ,  as , and  as.

Return value
@1@ Returns a value that is the first occurrence of the sequence  (aka needle) in the range  (aka haystack), after application of the projections  and  to the elements of both sequences respectively with consequencing application of the binary predicate  to compare projected elements. If no such occurrence is found, is returned. If the range to search for (aka needle) is empty, that is, then the is returned. @2@ Same as but the return type is.

Complexity
At most applications of the corresponding predicate and each projection, where and ; and.