首先,我們先搞清楚,棧的原理就是現金後出,譬如往箱子裡面放球,最先放進去的最後拿出來。下面給一下我臭臭的**:
#include
#include
//定義結構體
struct node
;int
main()
q=p;
}//列印建立的鍊錶
t=head->next;
while
(t!=
null
)//鏈棧:先入後出,因此新入的數應該在頭指標的後面
for(
int i=
0;i++i)
q=p;
//記錄上乙個入站的值
}//列印鏈棧
t=head->next;
while
(t!=
null
)## 鏈佇列
佇列即是先進後出,就像平時就餐排隊一樣,這裡我模擬了一人入隊就有一人出隊的環境。
````c
#include
#include
//定義結構體
struct node
;int
main()
printf
("\n");
//列印該鍊錶
t=head->next;
while
(t!=
null
)//進入新元素
while
(scanf
("%d"
,&a)
&&a!=-1
) */
printf
("\n");
q=p;記錄新入棧的元素
}//列印鍊錶
t=head->next;
while
(t!=
null
)}
順序棧 鏈棧 順序佇列 鏈佇列區別
順序棧的主要特徵是用乙個陣列實現棧的儲存,top指標確定棧頂元素位置 定義形式如下 define max 100 template class seqstack void push t x t gettop t pop bool isempty bool isfull int getsize pri...
演算法設計 鏈棧和鏈佇列 鏈棧和鏈佇列的實現
1.鏈佇列。利用帶有頭結點的單鏈表來實現鏈佇列,插入和刪除的複雜度都為o 1 include include typedef struct qnode qnode typedef struct linkqueue linkqueue void initialize linkqueue linkque...
3 鏈棧和鏈佇列
鏈棧 1 include2 using namespace std 3struct node 7enum error 8class stack 22 初始化 棧頂指標置為空,計數變數設定為0 23 stack stack 2728 29 判斷棧是否為空 count 0 top null 30 31b...