C++ Queue::operator<=() 函式



C++ 的std::queue::operator<=()函式用於比較兩個佇列物件,確定左運算元是否小於或等於右運算元。它根據先進先出 (FIFO) 方式比較元素。如果左佇列小於或等於右佇列,則返回布林值 true,否則返回 false。此函式的時間複雜度為線性,即 O(n)。

語法

以下是 std::queue::operator<=() 函式的語法。

bool operator<= (const queue<T,Container>& q1, const queue<T,Container>& q2);

引數

  • q1 - 表示第一個佇列物件。
  • q2 - 表示第二個佇列物件。

返回值

如果第一個佇列小於或等於第二個佇列,則此函式返回 true,否則返回 false。

示例

讓我們看看下面的示例,我們將比較佇列的大小。

#include <iostream>
#include <queue>
int main()
{
    std::queue<int> a, b;
    for (int x = 0; x < 3; ++x)
        a.push(x);
    for (int x = 0; x < 5; ++x)
        b.push(x);
    if (a.size() <= b.size())
        std::cout << "Queue1 is smaller or equal to Queue2.";
    else
        std::cout << "Queue1 is larger than Queue2.";
    return 0;
}

輸出

以上程式碼的輸出如下:

Queue1 is smaller or equal to Queue2.

示例

在下面的示例中,我們將比較兩個佇列的隊首元素。

#include <iostream>
#include <queue>
int main()
{
    std::queue<int> a, b;
    a.push(11);
    a.push(2);
    b.push(1);
    b.push(3);
    if (a.front() <= b.front())
        std::cout << "Front element of queue1 is smaller or equal to front element of queue2. ";
    else
        std::cout << "Front element of queue1 is greater than front element of queue2.";
    return 0;
}

輸出

以下是以上程式碼的輸出:

Front element of queue1 is greater than front element of queue2.

示例

考慮以下示例,我們將比較佇列的隊首元素與一個常數值。

#include <iostream>
#include <queue>
int main()
{
    std::queue<int> a;
    a.push(1);
    a.push(22);
    int x = 5;
    if (a.front() <= x) {
        std::cout << "Front element is less than or equal to " << x << std::endl;
    } else {
        std::cout << "Front element is greater than " << x << std::endl;
    }
    return 0;
}

輸出

如果我們執行以上程式碼,它將生成以下輸出:

Front element is less than or equal to 5
queue.htm
廣告

© . All rights reserved.