温馨提示×

C++ sort()在多维数组中的应用

c++
小樊
98
2024-07-18 14:46:20
栏目: 编程语言

在C++中,使用sort()函数可以对多维数组中的元素进行排序。多维数组可以使用数组的数组来表示,例如int arr[3][3]表示一个3行3列的二维数组。下面是一个示例代码,演示如何在多维数组中使用sort()函数对元素进行排序:

#include <iostream>
#include <algorithm>

int main() {
    int arr[3][3] = {
        {9, 8, 7},
        {6, 5, 4},
        {3, 2, 1}
    };

    // 将二维数组中的所有元素放入一个一维数组中
    int size = 3 * 3;
    int temp[size];
    int k = 0;
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            temp[k++] = arr[i][j];
        }
    }

    // 对一维数组中的元素进行排序
    std::sort(temp, temp + size);

    // 将排序后的元素重新放回到二维数组中
    k = 0;
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            arr[i][j] = temp[k++];
        }
    }

    // 打印排序后的二维数组
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            std::cout << arr[i][j] << " ";
        }
        std::cout << std::endl;
    }

    return 0;
}

在上面的示例代码中,我们首先将二维数组中的元素放入一个一维数组中,然后使用sort()函数对一维数组中的元素进行排序,最后将排序后的元素重新放回到二维数组中。最终打印出排序后的二维数组。

0