Función de clasificación () de C ++

Las funciones en C++ sort()son funciones de biblioteca estándar para ordenar elementos en contenedores como matrices, vectores, listas vinculadas, etc. Utiliza un algoritmo de clasificación llamado Quicksort, que generalmente tiene un mejor rendimiento.

sort()La función se encuentra <algorithm>en el archivo de encabezado y acepta dos iteradores como parámetros que representan el rango de elementos a ordenar. vector<int> numsPor ejemplo, si desea ordenar un vector de números enteros , puede llamar sort()a la función de esta manera:

#include <algorithm>
#include <vector>

int main() {
    std::vector<int> nums = {4, 2, 8, 5, 1};
    std::sort(nums.begin(), nums.end());
    // 现在nums中的元素已经按升序排列
    return 0;
}

sort()La función ordena en orden ascendente de forma predeterminada. Si necesita ordenar en orden descendente, puede usar greaterel objeto de función como tercer parámetro para pasar a sort()la función. Por ejemplo:

#include <algorithm>
#include <functional>
#include <vector>

int main() {
    std::vector<int> nums = {4, 2, 8, 5, 1};
    std::sort(nums.begin(), nums.end(), std::greater<int>());
    // 现在nums中的元素已经按降序排列
    return 0;
}

Además, sort()la función también puede aceptar un objeto invocable (función u objeto de función) como tercer parámetro, que se utiliza para personalizar la forma de clasificación. Con funciones de comparación personalizadas, puede ordenar elementos según criterios de clasificación específicos.

Cabe señalar que sort()la función ordena los elementos en el contenedor in situ, es decir, no crea un nuevo contenedor, sino que modifica directamente el orden de los elementos en el contenedor original. Además, sort()la complejidad temporal de la función suele ser O (NlogN), donde N es el número de elementos a ordenar.

En resumen, la sort()función C ++ es una función muy conveniente para ordenar elementos contenedores: puede ordenar fácilmente matrices, vectores, etc. en orden ascendente o descendente, y también puede implementar criterios de clasificación específicos a través de funciones de comparación personalizadas.

Supongo que te gusta

Origin blog.csdn.net/2201_75772333/article/details/130701805
Recomendado
Clasificación