//棧實現佇列功能
#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 ...