Graphisoft®

GSRootVersion: 1.0

PushHeap

범위의 끝 부분에 있는 요소를 범위의 이전 요소들로 구성된 기존 Heap에 추가합니다.

template <class Ran>
void PushHeap (
    Ran                 first,
    Ran                 last
);
template <class Ran, class BinPred>
void PushHeap (
    Ran                 first,
    Ran                 last,
    BinPred             pred
);

Template 파라미터

Ran
랜덤 접근 반복자입니다.
BinPred
이항 술어(Binary predicate)입니다.

파라미터

first
Heap의 1번째 요소의 위치를 설명하는 랜덤 접근 반복자입니다.
last
Heap로 변환할 범위의 마지막 직전 요소의 위치를 설명하는 랜덤 접근 반복자입니다.
pred
어떤 요소가 다른 요소보다 작다는 의미를 정의하는 사용자 정의 술어 함수 객체입니다. 이항 술어(binary predicate)를 2개의 인자를 취하며 만족할 때에는 true, 만족하지 않을 때에는 false를 리턴합니다.

설명

PushHeap은 Heap에 요소를 추가합니다. [first, last - 1)는 이미 Heap이라고 가정합니다; Heap에 추가될 요소는 *(last - 1)입니다. PushHeap의 2가지 버전들은 어떤 요소가 다른 요소보다 작다는 것을 정의하는 방법에서 다릅니다. 1번째 버전은 operator<를 사용하여 객체들을 비교하고, 2번째 버전은 술어 pred를 사용하여 객체들을 비교합니다.

참고사항

알고리즘