◐ Shell
clean mode source ↗

std::sort - cppreference.com

De cppreference.com

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 > void sort( RandomIt first, RandomIt last );

(1)

template< class RandomIt, class Compare > void sort( RandomIt first, RandomIt last, Compare comp );

(2)

Ordena los elementos de la [first, last) rango en orden ascendente. El orden de los elementos iguales no se garantiza que se mantendrá. 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 the elements in the range [first, last) in ascending order. The order of equal elements is not guaranteed to be preserved. 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.

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 - 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 const) Type1 y Type2 a pesar de la categoría de valor (por consiguiente, no se permite a Type1 & , ni tampoco a Type1 a menos que para Type1 un movimiento sea equivalente a una copia (desde C++11)).
Los tipos Type1 y Type2 deben ser tales que un objeto de tipo RandomIt puede ser desreferenciado y luego convertido implícitamente a ambos. ​

Requisitos de tipo
-RandomIt debe reunir los requerimientos de ValueSwappable y RandomAccessIterator.
-The type of dereferenced RandomIt must meet the requirements of MoveAssignable and MoveConstructible.

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.

Complejidad

O(N·log(N)), donde las aplicaciones N = std::distance(first, last) de cmp .

Original:

O(N·log(N)), where N = std::distance(first, last) applications of cmp.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

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::sort(s.begin(), s.end());
    for (int a : s) {
        std::cout << a << " ";
    } 
    std::cout << '\n';

    std::sort(s.begin(), s.end(), std::greater<int>());
    for (int a : s) {
        std::cout << a << " ";
    } 
    std::cout << '\n';
}

Salida:

0 1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1 0

Ver también

ordena los primeros n elementos de un rango

Original:

sorts the first N elements of a range

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.


(plantilla de función) [editar]

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.


(plantilla de función) [editar]