在STL中实现LexicoGraphical_Compare的C ++程序

C ++函数std::algorithm::lexicographical_compare()测试一个范围是否在字典上小于另一个范围。字典比较是一种比较,通常用于在字典中按字母顺序对单词进行排序。

声明

模板<class InputIterator1,class InputIterator2>

bool lexicographical_compare(InputIterator1 first1,InputIterator1 last1,InputIterator2 first2,InputIterator2 last2);

算法

Begin

   result = lexicographical_compare(v1.begin(), v1.end(), v2.begin(), v2.end())

   if (result == true)

      Print v1 is less than v2

   result = lexicographical_compare(v1.begin(), v1.end(), v2.begin(), v2.end())

   if (result == false)

      Print v1 is not less than v2

End

示例

#include <iostream>

#include <vector>

#include <algorithm>

#include <string>

using namespace std;

int main(void) {

   //v1和v2的初始化

   vector<string> v1 = {"One", "Two", "Three"};

   vector<string> v2 = {"one", "two", "three"};

   bool result;

   result = lexicographical_compare(v1.begin(), v1.end(), v2.begin(), v2.end());

   if (result == true)

      cout << "v1 is less than v2." << endl;

      v1[0] = "two";

      result = lexicographical_compare(v1.begin(), v1.end(), v2.begin(), v2.end());

   if (result == false)

      cout << "v1 is not less than v2." << endl;

   return 0;

}

输出结果

v1 is less than v2.

v1 is not less than v2.

以上是 在STL中实现LexicoGraphical_Compare的C ++程序 的全部内容, 来源链接: utcz.com/z/327117.html

回到顶部