std::is_heap_until
![]() |
Esta página se ha traducido por ordenador/computador/computadora de la versión en inglés de la Wiki usando Google Translate.
La traducción puede contener errores y palabras aparatosas/incorrectas. Planea sobre el texto para ver la versión original. Puedes ayudar a corregir los errores y mejorar la traducción. Para instrucciones haz clic aquí. |
Definido en el archivo de encabezado <algorithm>
|
||
template< class RandomIt > RandomIt is_heap_until( RandomIt first, RandomIt last ); |
(1) | (desde C++11) |
template< class RandomIt, class Compare > RandomIt is_heap_until( RandomIt first, RandomIt last, Compare comp ); |
(2) | (desde C++11) |
[first, last)
rango y encuentra la más amplia gama en principio first
que es' montón. La primera versión de la función utiliza operator< para comparar los elementos, el segundo utiliza la función de comparación dado comp
.[first, last)
and finds the largest range beginning at first
which is heap. The first version of the function uses operator< to compare the elements, the second uses the given comparison function comp
.You can help to correct and verify the translation. Click here for instructions.
Contenido |
[editar] Parámetros
first, last | - | la gama de elementos a examinar
Original: the range of elements to examine The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
comp | - | objeto función de comparación (es decir, un objeto que satisface los requerimientos de Compare) que devuelve true si el primer argumento es menor que el segundo. La signatura de la función de comparación deberá ser equivalente a lo siguiente: bool cmp(const Type1 &a, const Type2 &b); Mientras que la signatura no necesita ser const &, la función no debe modificar los objetos que se le pasaron y debe admitir todos los valores de los tipos (posiblemente |
Requisitos de tipo | ||
-RandomIt debe reunir los requerimientos de RandomAccessIterator .
|
[editar] Valor de retorno
first
que es montón'. Es decir, el iterador it
último para el que es amplia [first, it)
montón' .first
which is heap. That is, the last iterator it
for which range [first, it)
is heap.You can help to correct and verify the translation. Click here for instructions.
[editar] Complejidad
first
y last
first
and last
You can help to correct and verify the translation. Click here for instructions.
[editar] Notas
[f,l)
que tiene las siguientes propiedades:[f,l)
that has the following properties:You can help to correct and verify the translation. Click here for instructions.
- *f es el elemento más grande en el intervaloOriginal:*f is the largest element in the rangeThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions. - un elemento nuevo puede añadirse utilizando std::push_heap()Original:a new element can be added using std::push_heap()The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions. - el primer elemento se puede eliminar con std::pop_heap()Original:the first element can be removed using std::pop_heap()The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
-
You can help to correct and verify the translation. Click here for instructions.
[editar] Ejemplo
#include <iostream> #include <algorithm> int main() { std::vector<int> v { 3, 1, 4, 1, 5, 9 }; std::make_heap(v.begin(), v.end()); // probably mess up the heap v.push_back(2); v.push_back(6); auto heap_end = std::is_heap_until(v.begin(), v.end()); std::cout << "all of v: "; for (auto i : v) std::cout << i << ' '; std::cout << '\n'; std::cout << "only heap: "; for (auto i = v.begin(); i != heap_end; ++i) std::cout << *i << ' '; std::cout << '\n'; }
Salida:
all of v: 9 5 4 1 1 3 2 6 only heap: 9 5 4 1 1 3 2
[editar] Ver también
(C++11) |
Verifica si el rango dado es un montículo de máximos. (plantilla de función) |