is_permutation
Determines whether the elements in a given range form a valid permutation. A permutation is a series of elements in which all of the elements that test true for a condition precede elements that return false.
template<class FwdIt1, class FwdIt2>
bool is_permutation(FwdIt first1, FwdIt last1,
FwdIt first2);
template<class FwdIt1, class FwdIt2, class Pr>
bool is_permutation(FwdIt first1, FwdIt last1,
FwdIt first2, Pr pred);
매개 변수
first1
A forward iterator that refers to the first element of the given range.last1
A forward iterator that refers to the non-inclusive last element of the given range.first2
A forward iterator that refers to the first element of a second range, used for comparison.pred
A predicate that returns a bool.
반환 값
true when all of the elements in the given range that test true for a condition come before any elements that test false; otherwise, false.
설명
The first template function assumes that there are as many elements in the range beginning at first2 as there are in the range designated by [first1, last1). It returns true only if, for each element X in the range designated by [first1, last1) there are as many elements Y in the same range for which X == Y as there are in the range beginning at first2. Here, operator== must perform a pairwise comparison between its operands.
The second template function behaves the same, except that it replaces operator==(X, Y) with pred(X, Y).
요구 사항
헤더: <algorithm>
네임스페이스: std