佇列的最大值

2021-10-04 05:12:28 字數 1105 閱讀 4145

題目:請定義乙個佇列並實現函式 max_value 得到佇列裡的最大值,要求函式max_value、push_back 和 pop_front 的均攤時間複雜度都是o(1)。若隊列為空,pop_front 和 max_value 需要返回 -1。

示例:

示例 1:

輸入: [「maxqueue」,「push_back」,「push_back」,「max_value」,「pop_front」,「max_value」]

[,[1],[2],,,]

輸出: [null,null,null,2,1,2]

解釋:表示壓入資料1,2。會求得最大值為2,隊頭元素的2。

示例 2:

輸入: [「maxqueue」,「pop_front」,「max_value」]

[,,]

輸出: [null,-1,-1]

class

maxqueue

intmax_value()

//找最大元素}}

return max;

}void

push_back

(int value)

intpop_front()

return queue[qt++];

//每次要把這個隊頭刪除

}private

: vector<

int> queue;

int qt;

//隊頭

int qw;

//隊尾};

intmain()

int param_1 = obj-

>

max_value()

; cout

>

pop_front()

; cout

>

pop_front()

; cout<}

通過這個題,要知道實現棧或者佇列,我們可以借用已有的資料結構來實現。加油哦!?。

佇列的最大值

題目 給定乙個陣列和滑動視窗的大小,請找出所有滑動視窗裡的最大值。例如,如果輸入陣列及滑動視窗的大小3,那麼一共存在6個 滑動視窗,它們的最大值分別為,include include include using namespace std templateclass queuewithmax voi...

佇列的最大值

示例 1 輸入 maxqueue push back push back max value pop front max value 1 2 輸出 null,null,null,2,1,2 示例 2 輸入 maxqueue pop front max value 輸出 null,1,1 2.1 思路...

滑動視窗的最大值 佇列的最大值

請定義乙個佇列並實現函式max得到佇列裡的最大值,要求函式max push back和 pop front的時間複雜度都是o 1 在佇列中維護乙個儲存最大值的佇列,當pop和push操作的同時也對最大值佇列進行維護。當彈出的時佇列中的最大值時,也彈出最大值佇列的頭,當壓入新值時,對最大值佇列從後向前...