温馨提示×

如何使用c++的is_sorted函数判断数组是否有序

c++
小樊
83
2024-09-15 18:07:13
栏目: 编程语言

std::is_sorted 是 C++ 标准库中的一个函数,用于检查一个范围内的元素是否已按非降序排列。以下是如何使用std::is_sorted` 来判断一个数组是否有序的示例:

#include<iostream>
#include<algorithm> // 需要包含 algorithm 头文件

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

    if (std::is_sorted(arr, arr + n)) {
        std::cout << "数组已排序"<< std::endl;
    } else {
        std::cout << "数组未排序"<< std::endl;
    }

    return 0;
}

在这个示例中,我们首先包含了头文件,然后定义了一个整数数组arr。接着,我们计算数组的长度 n,然后使用 std::is_sorted函数检查数组arr` 是否已排序。如果数组已排序,控制台将输出 “数组已排序”,否则将输出 “数组未排序”。

注意:std::is_sorted 默认检查非降序排列。如果你想检查数组是否按降序排列,可以使用 std::is_sorted 的重载版本,传入自定义的比较函数,例如 std::greater<int>()

0