C++ Queue::operator>() 函式



C++ 的 std::queue::operator> 函式是一個關係運算符,用於比較佇列物件。它檢查第一個佇列是否按字典序大於第二個佇列,如果第一個佇列的元素大於第二個佇列的元素,則返回布林值 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;
    std::queue<int> b;
    a.push(1);
    a.push(22);
    b.push(1);
    b.push(2);
    if (a > b) {
        std::cout << "Queue1 is greater than Queue2." << std::endl;
    } else {
        std::cout << "Queue1 is not greater than Queue2." << std::endl;
    }
    return 0;
}

輸出

以上程式碼的輸出如下:

Queue1 is greater than Queue2.

示例

考慮另一種情況,我們將用字元初始化佇列並應用 operator> 函式。

#include <iostream>
#include <queue>
int main()
{
    std::queue<char> a;
    std::queue<char> b;
    a.push('a');
    a.push('b');
    b.push('a');
    b.push('c');
    if (a > b) {
        std::cout << "Queue1 is greater than Queue2." << std::endl;
    } else {
        std::cout << "Queue1 is not greater than Queue2." << std::endl;
    }
    return 0;
}

輸出

以上程式碼的輸出如下:

Queue1 is not greater than Queue2.

示例

在下面的例子中,我們將對包含浮點值的佇列應用 operator> 函式。

#include <iostream>
#include <queue>
int main()
{
    std::queue<float> a;
    std::queue<float> b;
    a.push(1.1);
    a.push(0.4);
    b.push(0.2);
    b.push(0.5);
    if (a > b) {
        std::cout << "Queue1 is greater than Queue2." << std::endl;
    } else {
        std::cout << "Queue1 is not greater than Queue2." << std::endl;
    }
    return 0;
}

輸出

讓我們編譯並執行上面的程式,這將產生以下結果:

Queue1 is greater than Queue2.

示例

以下示例將對空佇列應用 operator> 函式並觀察輸出。

#include <iostream>
#include <queue>
int main()
{
    std::queue<int> a;
    std::queue<int> b;
    if (a > b) {
        std::cout << "Queue1 is greater than Queue2." << std::endl;
    } else {
        std::cout << "Queue1 is not greater than Queue2." << std::endl;
    }
    return 0;
}

輸出

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

Queue1 is not greater than Queue2.
queue.htm
廣告