資料結構 用佇列實現棧 C

2021-07-16 22:24:28 字數 1261 閱讀 6414

//棧實現佇列功能

#include

#include

#include

#include

using namespace std;

//結點

class mydata

//預設建構函式

mydata(int value) :data(value), next(null){}//帶引數建構函式

int data;

mydata *next;

};//棧結構

class mystack

//預設建構函式

void push(mydata data);

void pop(mydata *pdata);

bool isempty();

mydata *top;

};//進棧

void mystack::push(mydata data)

//出棧

void mystack::pop(mydata *data)

data->data = top->data;//給出棧結點賦值

mydata *p = top;

top = top->next;//棧頂結點指向下乙個結點

delete p;

}//判斷是否為空棧

bool mystack::isempty()

//以棧替隊

class myqueue

;//重載入棧(對屬性進行操作)入棧對a

void myqueue::enqueue(mydata data)

bool myqueue::isempty()

void myqueue::dequeue(mydata &data)

}stackb.pop(&data);

cout << data.data << endl;

}else cout<<"木有數值在隊裡了"<

int x;

mydata data(0);//初始化乙個結點

myqueue stqueue;//定義乙個佇列

int com = 1;//是否退出程式

int choice;//選擇

while (com)

cout << "isempty:" << stqueue.isempty() << endl;

cout << "if you want to exit,enter '0'" << endl;

cin >> com;

}return 0;

}

資料結構 佇列 (十二) 佇列實現棧

使用兩個佇列實現棧,要滿足 先出,比如輸入 1 2 3 4 5,那麼輸出就應該是 5 4 3 2 1 使用兩個佇列,分別是資料佇列和輔助隊裡,1 資料新增到資料佇列中 2 元素出棧時,將有資料的佇列元素 保留最後乙個元素 移動到無資料的佇列 3 將最後乙個元素出隊,正式所需要的出棧資料 system...

(C語言)資料結構 佇列 棧

12 佇列 queue 入隊 put 出對get 1 2 file queue linkedlist.c 3 4 佇列 queue 5 入隊 put 放在鍊錶尾部,並更新指向鍊錶尾部的指標tail 6 出隊 get 返回並刪除鍊錶頭部節點,並更新指向鍊錶頭部的指標head 7 8 9 include...

資料結構 棧和佇列 c

標頭檔案 標頭.h include include using namespace std define stack init size 100 define stackincrement 10 define overflow 2 define error 0 define ok 1 define ...