📅  最后修改于: 2023-12-03 14:53:11.063000             🧑  作者: Mango
在 C++ 中,可以使用 std::is_sorted
模板函数来检查向量是否已订购。
以下是 std::is_sorted
函数的语法:
template< class ForwardIt >
bool is_sorted( ForwardIt first, ForwardIt last );
template< class ForwardIt, class Compare >
bool is_sorted( ForwardIt first, ForwardIt last, Compare comp );
其中:
first
和 last
:定义要在其中查找已排序范围的迭代器。comp
:定义可在排序期间使用的比较函数对象。如果检测到范围 [first, last)
已排序,则返回 true
。否则,返回 false
。
有关更多信息和示例,请参阅 std::is_sorted。
以下是使用 std::is_sorted
函数检查向量是否已订购的示例代码:
#include <iostream>
#include <vector>
#include <algorithm>
int main() {
std::vector<int> numbers = { 1, 2, 3, 4, 5 };
if (std::is_sorted(numbers.begin(), numbers.end())) {
std::cout << "The vector is sorted." << std::endl;
}
else {
std::cout << "The vector is not sorted." << std::endl;
}
return 0;
}
在上述示例代码中,std::is_sorted
函数检查 numbers
向量是否已订购,如果已排序,则输出 "The vector is sorted."
,否则输出 "The vector is not sorted."
。
使用 std::is_sorted
函数,可以轻松检查向量是否已订购。这是 STL 中一个非常有用的功能,可以帮助程序员编写更健壮的代码。