C++ 算法 is_sorted() 函数

定义和用法

is_sorted() 函数用于检测数据范围是否按升序排列。

数据范围通过迭代器指定。

实例

检测 vector 是否已排序:

vector<int> numbers = {1, 2, 3, 5, 7, 9};

if (is_sorted(numbers.begin(), numbers.end())) {
    cout << "已排序";
} else {
    cout << "未排序";
}

亲自试一试

语法

is_sorted(iterator start, iterator end);

参数

参数 描述
start 必需。指向数据范围起始位置的迭代器。
end

必需。指向数据范围结束位置的迭代器。

将检测到该位置之前的元素。

技术细节

返回:

布尔值:

  • true(1) - 如果数据范围已按升序排列
  • false(0) - 如果数据范围未排序

说明

该函数默认检查升序排列,时间复杂度为 O(n),其中 n 是数据范围的大小。如需检查降序排列,可使用:

is_sorted(start, end, greater<type>())

相关页面

教程:C++ 数据结构

教程:C++ 迭代器

教程:C++ 算法

教程:C++ 布尔值