Partilhar via


is_heap_until

Retorna um iterador posicionado no primeiro elemento no intervalo [begin, end) que não satisfaz o heap ordenação condição, ou end se o intervalo de formar um heap.

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     );

Parâmetros

  • begin
    Um iterador de acesso aleatório que especifica o primeiro elemento de um intervalo para verificar se há um heap.

  • end
    Um iterador de acesso aleatório que especifica o fim do intervalo para verificar se há um heap.

  • compare
    Um predicado binário que especifica a fraca restrita ordenação condição que define um heap. O padrão do predicado quando compare não é especificado é std::less<>.

Valor de retorno

Retorna end se o intervalo especificado formar um heap ou contém um ou menos elementos. Caso contrário, retorna que um iterador para o primeiro elemento encontrado que não satisfazem a condição de heap.

Comentários

A primeira função de modelo retorna o último iterador next na [begin, end] onde [begin, next) for um heap ordenado pelo objeto de função std::less<>. Se a distânciaend - begin < 2, a função retornará end.

A segunda função de modelo se comporta da mesma maneira como a primeira, exceto que ele usa o predicado compare em vez de std::less<> como o critério de ordenação de heap.

Requisitos

Cabeçalho: <algorithm>

Namespace: std

Consulte também

Referência

is_heap

Struct less

<algorithm>

Biblioteca de Modelos Padrão