C++ Deque::operator<() Function



The C++ std::deque::operator<() function is used to compare two deque objects lexicographically. It compares elements in sequence until it finds the first pair of unequla elements. If the elements in the first deque is less than the corresponding element in the second deque, it returns true otherwise false.

Syntax

Following is the syntax for std::deque::operator<() function.

bool operator<  (const deque<T,Alloc>& lhs, const deque<T,Alloc>& rhs);

Parameters

  • lhs, rhs − It indicates the deque containers.

Return value

It returns true if the condition holds, otherwise false.

Exceptions

This function never throws exception.

Time complexity

The time complexity of this function is Linear i.e. O(n)

Example

In the following example, we are going to consider the basic usage of operator<() function.

#include <iostream>
#include <deque>
int main()
{
    std::deque<int> a = {1, 2};
    std::deque<int> b = {1, 2, 3};
    if (a < b) {
        std::cout << "a is less than b";
    } else {
        std::cout << "a is not less than b";
    }
}

Output

Output of the above code is as follows −

a is less than b

Example

Consider the following example, where we are going to compare the empty deque with non empty deque and observing the output.

#include <iostream>
#include <deque>
int main()
{
    std::deque<char> a;
    std::deque<char> b = {'A', 'B', 'C'};
    if (a < b) {
        std::cout << "a is less than b";
    } else {
        std::cout << "a is not less than b";
    }
}

Output

Following is the output of the above code −

a is less than b

Example

In the following example, we are going to compare the deques that contains strings.

#include <iostream>
#include <deque>
int main()
{
    std::deque<std::string> a = {"Ducati", "Cheron"};
    std::deque<std::string> b = {"Alto", "Benz"};
    if (a < b) {
        std::cout << "a is less than b";
    } else {
        std::cout << "a is not less than b";
    }
}

Output

If we run the above code it will generate the following output −

a is not less than b
deque.htm
Advertisements