std::partial_sort
De cppreference.com
![]() | This page has been machine-translated from the English version of the wiki using Google Translate. The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
Defined in header <algorithm> | ||
template<class RandomIt > void partial_sort( RandomIt first, RandomIt middle, RandomIt last ); | (1) | |
template<class RandomIt, class Compare > void partial_sort( RandomIt first, RandomIt middle, RandomIt last, Compare comp ); | (2) | |
Ordena de algunos de los elementos en el rango
[first, last)
en orden ascendente. El middle - first primero de estos elementos se colocan en el rango [first, middle)
. El orden de los elementos iguales no se garantiza que se mantendrá. El orden de los elementos restantes en el rango [middle, last)
no está especificada. La primera versión utiliza operator< para comparar los elementos, la segunda versión utiliza la función de comparación dado comp
.Original:
Sorts some of the elements in the range
[first, last)
in ascending order. The first middle - first of these elements are placed in the range [first, middle)
. The order of equal elements is not guaranteed to be preserved. The order of the remaining elements in the range [middle, last)
is unspecified. The first version uses operator< to compare the elements, the second version uses the given comparison function comp
.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.
Contenido |
[editar]Parámetros
first, last | - | la gama de elementos a ordenar Original: the range of elements to sort The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
comp | - | comparison function which returns true if the first argument is less than the second. The signature of the comparison function should be equivalent to the following: bool cmp(const Type1 &a, const Type2 &b); The signature does not need to have const&, but the function must not modify the objects passed to it. |
Type requirements | ||
-RandomIt must meet the requirements of ValueSwappable and RandomAccessIterator . | ||
-The type of dereferenced RandomIt must meet the requirements of MoveAssignable and MoveConstructible . |
[editar]Valor de retorno
(Ninguno)
Original:
(none)
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]Complejidad
O(N·log2(N)), donde las aplicaciones N =std::distance(first, last) de
cmp
. Si la memoria adicional está disponible, la complejidad es O(N·log(N))Original:
O(N·log2(N)), where N =std::distance(first, last) applications of
cmp
. If additional memory is available, then the complexity is O(N·log(N))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 <algorithm>#include <functional>#include <array>#include <iostream> int main(){std::array<int, 10> s{5, 7, 4, 2, 8, 6, 1, 9, 0, 3}; std::partial_sort(s.begin(), s.begin()+3, s.end());for(int a : s){std::cout<< a <<" ";}}
Output:
0 1 2 7 8 6 5 9 4 3
[editar]Ver también
copias y clasifica parcialmente una serie de elementos Original: copies and partially sorts a range of elements The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (función de plantilla) | |
Ordena un intervalo de elementos, mientras que la preservación del orden entre los elementos iguales Original: sorts a range of elements while preserving order between equal elements The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (función de plantilla) | |
Ordena un intervalo en orden ascendente Original: sorts a range into ascending order The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (función de plantilla) |