函数原型:
default (1) | template |
---|---|
custom (2) | template |
按照词典序比较前者是否小于后者。
当序列<first1, last1>按照字典序比较小于后者序列<first2, last2>,则返回true。否则,返回false。
所谓字典序比较,指的是两个序列分别从第一个开始一一按照字典序进行比较,如果相同位置的元素相同,则继续向后比较,直到相同位置出现不同的元素为止。
示例:
// lexicographical_compare example#include默认比较函数,使用 ASCII 进行比较,例如本例中'A'为65, 'a'为97,因此'a'>'A'。// std::cout, std::boolalpha#include // std::lexicographical_compare#include // std::tolower// a case-insensitive comparison function:bool mycomp (char c1, char c2){ return std::tolower(c1)
自定义的比较函数mycomp中,将所有的字符转换成为小写,所以第一个未匹配的字符是第三个的'p'和'a'。
输出:
Comparing foo and bar lexicographically (foo
性能分析:
最多比较次数为: 2*min(count1,count2)
版权声明:本文为博主原创文章,未经博主允许不得转载。