◐ Shell
clean mode source ↗

std::sort - cppreference.com

Da cppreference.com.

Questa pagina è stata tradotta in modo automatico dalla versione in ineglese della wiki usando Google Translate.

La traduzione potrebbe contenere errori e termini strani. Muovi il puntatore sopra al testo per vedere la versione originale. Puoi aiutarci a correggere gli gli errori. Per ulteriori istruzioni clicca qui.

Click here for the English version of this page

<metanoindex/>

<tbody> </tbody>

Elemento definito nell'header

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

Ordina gli elementi della gamma [first, last) in ordine crescente. L'ordine degli elementi uguali non è garantito per essere preservato. La prima versione utilizza operator< di confrontare gli elementi, la seconda versione utilizza la funzione di confronto dato 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.

Parametri

first, last -

la gamma di elementi da ordinare

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.
The types Type1 and Type2 must be such that an object of type RandomIt can be dereferenced and then implicitly converted to both of them. ​

Type requirements
-RandomIt must meet the requirements of ValueSwappable and RandomAccessIterator.
-The type of dereferenced RandomIt must meet the requirements of MoveAssignable and MoveConstructible.

Valore di ritorno

(Nessuno)

Original:

(none)

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

Complessità

O(N·log(N)), in cui le applicazioni di N = std::distance(first, last) 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.

Esempio

#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';
}

Output:

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

Vedi anche

ordina i primi n elementi di un intervallo

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.


(funzione di modello) [modifica]

Ordina un intervallo di elementi, mantenendo ordine tra elementi uguali

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.


(funzione di modello) [modifica]