📜  如何检查向量是否已订购c ++(1)

📅  最后修改于: 2023-12-03 14:53:11.063000             🧑  作者: Mango

如何检查向量是否已订购 C++?

在 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 );

其中:

  • firstlast:定义要在其中查找已排序范围的迭代器。
  • 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 中一个非常有用的功能,可以帮助程序员编写更健壮的代码。