實驗二第三章棧和佇列
一、棧【實驗原始碼】
#include<>
#include<>
#include<>
#define stack_init_size 100
#define stackincrement 10
typedef int selemtype;
typedef int status;
typedef structsqstack;
status initstack(sqstack &s)
return 1;
}//initstack
/*status gettop(sqstack s, selemtype &e)//gettop*/
status push(sqstack &s,selemtype e)
*return 1;
}//push
status pop(sqstack &s,selemtype e)//pop
void dispay(sqstack s)
void main()
}else printf("輸入錯誤!請重新輸入!謝謝!\n");}}
【程式執行截圖】
二、動態佇列
【實驗原始碼】
#include<>
#include<>
#include<>
typedef int qelemtype;
typedef int status;
typedef struct qnodeqnode,*queueptr;
typedef structlinkqueue;
status initqueue(linkqueue &q)
status enqueue(linkqueue &q,qelemtype e)
status dequeue(linkqueue &q,qelemtype &e)
void display(linkqueue q)
printf("\n");
}void main()
}else printf("輸入錯誤!請重新輸入!謝謝!\n");}}
【程式執行截圖】
三、迴圈佇列
【實驗原始碼】
#include<>
#include<>
#include<>
#define maxqsize 4佇列最多可插入3個元素,乙個為空
typedef int qelemtype;
typedef int status;
typedef structsqqueue;
status initqueue(sqqueue &q)
status enqueue(sqqueue &q,qelemtype e)
else
}status dequeue(sqqueue &q,qelemtype &e){
//若佇列不空,則刪除q的隊頭元素,用e返回其值,並返回1;否則返回0
if( 0;e=
資料結構 棧與佇列
3311 請判斷下列表示式是否正確。輸入乙個表示式,表示式中包括 字母,數字,括號以及符號 判斷表達中各括號的位置是否遵循以下規則 1 各種括號左右數量相同。2 各種括號只能並列和巢狀,不能交差。輸入 只有一行,為乙個長度小於255的表示式。輸出 一行。如果表示式中各括號互相匹配,則輸出 yes 否...
資料結構棧和佇列基本操作
實驗二棧和佇列 棧的順尋儲存操作 include stdio.h include stdlib.h define stack init size 100 define stackincrement 10 typedef struct sqstack void initstack sqstack s ...
《資料結構》習題3棧和佇列
1.乙個棧的入棧序列a,b,c,d,e,則棧的不可能的輸出序列是 c a.edcba b.decba c.dceab d.abcde 2.若已知乙個棧的入棧序列是1,2,3,n,其輸出序列為p1,p2,p3,pn,若p1 n,則pi為 c a.i b.n i c.n i 1 d.不確定 3.棧結構通...