內容:實現乙個佇列,使得這個佇列能夠在o(1)時間內得到裡面最大元素
思路:
1、這時候使用兩個佇列來配合實現,乙個儲存資料,以實現普通佇列的功能
2、另乙個佇列作為輔助,每次壓入時,往資料佇列正常入隊,但是輔助佇列要入隊時都將比他小的出隊,
這樣就能保住輔助佇列的隊頭一定是最大的元素
**:
#include
#include
#include
using namespace std;
template
class max_queue
max_queue.
push
(data);}
t pop()
if(max_queue.
front()
== data_queue.
front()
) temp = data_queue.
front()
; data_queue.
pop();
return temp;
} t get_max()
return max_queue.
front()
;}};
intmain()
資料結構 佇列
一 佇列的迴圈陣列實現。1 初始化 空佇列。令rear front 0。2 入佇列 約定rear指向佇列尾元素的下乙個位置。入佇列時,先判斷佇列是否已滿,而後將array rear x 然後rear 3 出佇列 約定front指向佇列的首元素位置。出佇列時,先判斷佇列是否為空,而後返回隊首元素re ...
資料結構 佇列
資料參考自 資料結構c 語言描述 佇列是一種先進先出的資料結構,這與棧正好相反。下例是簡單的queue實現 queue.h檔案 ifndef queue h define queue h include include 資料元素結構 自定義 struct datatype 佇列元素最大數 const...
資料結構 佇列
code for fun created by dream whui 2015 1 25 include stdafx.h include include using namespace std define true 1 define false 0 define ok 1 define erro...