다음을 통해 공유


is_heap_until

힙 정렬 조건을 충족하지 않는 [begin, end) 범위의 첫 번째 요소에 배치된 반복기를 반환하거나, 범위가 힙을 형성하는 경우에는 end를 반환합니다.

template<class RandomAccessIterator>     RandomAccessIterator is_heap_until(         RandomAccessIterator begin,          RandomAccessIterator end     ); template<class RandomAccessIterator, class BinaryPredicate>      RandomAccessIterator is_heap_until(         RandomAccessIterator begin,          RandomAccessIterator end,          BinaryPredicate compare     );

매개 변수

  • begin
    힙에 대해 확인할 범위의 첫 번째 요소를 지정하는 임의 액세스 반복기입니다.

  • end
    힙에 대해 확인할 범위의 끝을 지정하는 임의 액세스 반복기입니다.

  • compare
    힙을 정의하는 엄격한/약한 정렬 조건을 지정하는 이진 조건자입니다. compare를 지정하지 않는 경우의 기본 조건자는 std::less<>입니다.

반환 값

지정된 범위가 힙을 형성하거나 요소를 하나 이하로 포함하는 경우 end를 반복합니다. 그렇지 않으면 첫 번째로 발견된 힙 조건을 충족하지 않는 요소에 대한 반복기를 반환합니다.

설명

첫 번째 템플릿 함수는 [begin, end]의 마지막 반복기 next를 반환합니다. 여기서 [begin, next)는 std::less<> 함수 개체로 정렬되는 힙입니다. 거리가 end - begin < 2이면 함수는 end를 반환합니다.

두 번째 템플릿도 첫 번째 템플릿과 동일하게 동작하지만 힙 정렬 조건으로 std::less<>가 아닌 compare 조건자를 사용합니다.

요구 사항

헤더: <algorithm>

네임스페이스: std

참고 항목

참조

is_heap

less 구조체

<algorithm>

표준 템플릿 라이브러리