ranges::is_sorted
ranges::is_sorted (정렬 검사 — ranges)
범위가 정렬(비감소) 순서인지 검사하는 ranges 버전 알고리즘이에요. <algorithm> 헤더에 있어요.
출처: cppreference
본문
std::ranges::is_sorted는 범위의 요소가 비감소(정렬) 순서인지 검사해요.
namespace std::ranges {
template< class R, class Proj = std::identity,
std::indirect_strict_weak_order<std::projected<ranges::iterator_t<R>, Proj>>
Comp = ranges::less >
constexpr bool is_sorted( R&& r, Comp comp = {}, Proj proj = {} );
}
- 반환 값: 정렬돼 있으면
true. comp(기본less)와proj(투영)를 지원해요.
std::vector<int> v{1, 2, 3, 3, 4};
bool ok = std::ranges::is_sorted(v); // true
정렬 전제를 요구하는 알고리즘을 쓰기 전에 확인하는 데 유용한 ranges 버전이에요.