Словарное сравнение в C++
Алгоритм lexicographical_compare сообщает, идет ли
первая последовательность раньше второй в словарном порядке.
Сравнение идет поэлементно с оператором < для типа
элемента. При равных префиксах короче диапазон считается
меньшим. Результат - флаг для условия.
Запишем два массива букв и выведем ответ:
#include <algorithm>
#include <iostream>
int main() {
char first[] = {'a', 'p'};
char second[] = {'a', 'r'};
bool less = std::lexicographical_compare(
std::begin(first), std::end(first),
std::begin(second), std::end(second));
std::cout << less << "\n";
return 0;
}
Сравните векторы {1, 2} и {1, 2, 0} алгоритмом lexicographical_compare и выведите результат.