📜  C ++中数组的排序向量(1)

📅  最后修改于: 2023-12-03 15:29:42.887000             🧑  作者: Mango

C++ 中数组的排序向量

在 C++ 中,可以使用数组来存储一组数据,并且也可以对这组数据进行排序操作。除了数组之外,还可以使用 C++ STL 中的 vector 容器来存储数据并进行排序操作。下面分别介绍数组和向量的排序方法。

数组的排序

在 C++ 中,可以使用 头文件中的 sort() 函数来对数组进行排序。sort() 函数的原型如下:

void sort(int* start, int* end);

其中,start 和 end 分别指向数组中需要排序的部分的起始和结束位置。排序之后,数组中的元素将按照从小到大的顺序排列。下面是一段示例代码,演示了如何使用 sort() 函数对数组进行排序。

#include <iostream>
#include <algorithm>
using namespace std;

int main()
{
    int arr[] = { 5, 2, 8, 4, 1, 9 };
    int n = sizeof(arr) / sizeof(arr[0]);

    sort(arr, arr + n);

    for (int i = 0; i < n; i++)
        cout << arr[i] << " ";

    return 0;
}

输出结果为:

1 2 4 5 8 9
向量的排序

向量是 C++ STL 中的一种容器类型,可以动态地存储数据。使用向量进行排序时,可以使用向量的成员函数 sort()。sort() 函数的原型如下:

void sort();

sort() 函数会按照从小到大的顺序排序向量中的元素。下面是一段示例代码,演示了如何使用 sort() 函数对向量进行排序。

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main()
{
    vector<int> vec = { 5, 2, 8, 4, 1, 9 };

    sort(vec.begin(), vec.end());

    for (int i = 0; i < vec.size(); i++)
        cout << vec[i] << " ";

    return 0;
}

输出结果为:

1 2 4 5 8 9

需要注意的是,向量的 sort() 函数使用的参数是迭代器,而不是指向数组的指针。因此,需要使用 vec.begin() 和 vec.end() 来表示向量的起始和结束位置。