演算法14 如何高效地用堆疊模擬佇列

2021-07-29 03:18:22 字數 786 閱讀 3737

由於棧是先進後出,佇列是先進先出。可以採用兩個棧enstack和destack來模擬佇列的行為。佇列的基本操作包括入佇列、出佇列和佇列是否為空。入佇列時,push元素到enstack;出佇列是,從destack中執行pop操作,如果destack為空,則從enstack push元素到destack,然後再執行destack的pop操作;如果enstack和destack都為空,則隊列為空。

#include 

#include

using

namespace

std;

class myqueue

~myqueue(){}

//入佇列

bool enqueue(int element)

//出佇列

bool dequeue(int &element)

//如果destack為空,則將enstack pop到destack

while(!enstack.empty())

if(!destack.empty())

return

false;

}//佇列是否為空

bool isempty()

return

false;

}private:

stack

enstack;

stack

destack;

};

int _tmain(int argc, _tchar* argv)

如何高效地管理時間

如何高效地管理時間 現代人的生活節奏越來越快,壓力也越來越大。經常會聽到白領人士抱怨乙個星期有三到四天的時間在加班,沒有時間鍛鍊身體,身體經常處在一種透支的狀態 也有人抱怨,雖然現在的職位已經到了中層管理層,但是沒有安全感,因為知識的更新速度太快。其實大家都感覺到時間是個瓶頸,每天列了一大堆的計畫,...

如何高效地管理時間

如何高效地管理時間 現代人的生活節奏越來越快,壓力也越來越大。經常會聽到白領人士抱怨乙個星期有三到四天的時間在加班,沒有時間鍛鍊身體,身體經常處在一種透支的狀態 也有人抱怨,雖然現在的職位已經到了中層管理層,但是沒有安全感,因為知識的更新速度太快。其實大家都感覺到時間是個瓶頸,每天列了一大堆的計畫,...

用Python高效地移動檔案

os.walk對於遍歷子目錄極其方便。ps 2014 12 12 5年後的今天,因為要寫乙個指令碼,列出5000多個分散的dicom的資訊,然後按每4gb一批打包到iso檔案中。又找到我上面的這篇文章。現在看當時這文章一是沒突出題目,主要介紹了os.walk的用法,二是細節沒說清楚。這裡再補充幾點 ...