1、演算法
棧是後入先出的規則,在**實現的時候,構造棧鍊錶的時候,節點指向前面的節點,而佇列節點指向後面的節點,以便出棧的時候,**實現方便。
2、**示例
#ifndef data_struct_stack_h
#define data_struct_stack_h
#include using namespace std;
class stack;
~node(){};
node* pre;//區別
int value;
};public:
stack();
~stack(){};
//佇列四大元素
node* qhead;//隊頭
node* qrear;//隊尾
void push(int value)//插入元素的時候,主要是更新棧尾
n1->pre=qrear;//需要注意這個地方與佇列的區別
qrear=n1;
}node * pop()
node* temp=qrear;
qrear=qrear->pre;
return temp;
}bool empty()
void main();
for (int i = 0; i <10 ; ++i)
while(!empty())
{node* n=pop();
std::cout 可以把棧想像成乙個桶 進棧 就是把和桶口一樣大的燒餅往桶裡面扔 出棧 就是把燒餅拿出來 特點 先進後出。先扔進去的燒餅最後才能拿出來,最後扔進去的燒餅,第乙個拿出來 剛開始top 1 top 1 然後把進棧的元素賦值給data top 入棧操作 void push stack s,int x els... 一 迴圈鍊錶 迴圈鍊錶是單鏈表的變形。迴圈鍊錶最後乙個結點的 link 指標不 為null,而是指向了表的前端。為簡化操作,在迴圈鍊錶中往往加入表頭結點。迴圈鍊錶的特點是 只要知道表中某一結點的位址,就可搜尋到所有其他結點的位址。二 迴圈鍊錶的定義 typedef char listdata typ... time limit 1000ms memory limit 65536k 有疑問?點這裡 堆疊是一種基本的資料結構。堆疊具有兩種基本操作方式,push 和 pop。push乙個值會將其壓入棧頂,而 pop 則會將棧頂的值彈出。現在我們就來驗證一下堆疊的使用。首先輸入整數t 1 t 10 代表測試的...資料結構 棧 棧
資料結構(八)
資料結構實驗之棧八 棧的基本操作