基於資料結構中的佇列與棧實現的停車場管理程式

2021-08-20 07:23:24 字數 1342 閱讀 8600

這是是停車場管理程式主要運用了資料結構中的佇列與棧的組合

先來看看效果:

#define maxsize 20///控制停車場停車的車輛數

typedef int elemtype;

int h=0;///用來記錄停車場停幾輛車

elemtype e;

int k=0;///記錄結構體的次序

int sa=2;

int h_wait=0;

struct time

tm[100];

typedef struct

sqqueue;

///初始化棧

void initqueue(sqqueue *&q)

void destoryqueue(sqqueue *&q)

bool queueempty(sqqueue *q)

bool enqueue(sqqueue *&q,elemtype e)

bool dequeue(sqqueue *&q,elemtype &e)

int queuelength(sqqueue *q)

void display(sqqueue *q)

int gettimehour()///得到當前的小時

int gettimesecond()///得到當前的秒

int gettimeminute()///得到當前的分鐘

void enterstation(sqqueue *&q,sqstack *&s)///進入停車場

if(a==2)

}else

}void stackdisplay(sqstack *s)

sqstack;

///初始化棧

void initstack(sqstack *&s)

void destorystack(sqstack *&s)

free(p);

}bool stackempty(sqstack *s)

void push(sqstack *&s,elemtype e)

bool pop(sqstack *&s,elemtype &e)

bool gettop(sqstack *&s,elemtype &e)

大致就這樣

資料結構中的棧與佇列

在資料結構中,有兩個知識體系特別重要,分別是棧和佇列。兩個定義方法很類似,區別在於棧是先入後出,佇列是先入先出。棧 一種先入後出的操作,主要以順序棧為基礎,棧其實類似與小時候的玩具槍的彈夾,最先按進去的子彈,最後才會發射。棧的順序實現 pragma once include include incl...

資料結構與演算法 棧與佇列的實現

棧的實現 棧既可以用鍊錶實現也可以用順序表實現,但棧一般用順序表 陣列 實現。因為所有的操作都是在棧頂,那麼在插入和刪除的情況下,這兩個表的時間複雜度都是一樣的。在這個前提下,那麼用陣列實現的話,訪問會比較快。佇列的實現 和棧一樣,佇列既可以用鍊錶實現也可以用順序表實現,但是一般用鍊錶實現。如果用順...

資料結構的棧與佇列

最近學習linux,講到了程序執行緒這一方面的內容,其中最重要的程序排程演算法,有乙個時間片輪轉排程演算法,怎麼也搞不懂,聽其他同學說可以從棧和佇列這一方面去理解,所以我又回來重新複習了一下棧與佇列的基本知識,相較於剛學棧與佇列的時候,現在又有了新的理解。使用的教材是 演算法導論 在這一章的內容中引...