帶鏈佇列類
帶鏈佇列類:檔名 linked_Queue.h
#include <iostream>
using namespace std;
template <class T>
struct node
{
T d;
node *next;
};
template <class T>
class linked_Queue
{
private:
node<T> *front,*rear;
public:
linked_Queue();
void prt_linked_Queue();
int flag_linked_Queue();
void ins_linked_Queue(T);
T del_linked_Queue();
};
template <class T>
linked_Queue<T>::linked_Queue()
{
front=NULL;
rear=NULL;
return;
}
template <class T>
void linked_Queue<T>::prt_linked_Queue()
{
node<T> *p;
p=front;
if(p==NULL)
{
cout<<"佇列為空"<<endl;
return;
}
do
{
cout<<p->d<<endl;
p=p->next;
} while (p!=NULL);
return;
}
template <class T>
int linked_Queue<T>::flag_linked_Queue()
{
if(NULL==front)
{
cout<<"佇列為空"<<endl;
return 0;
}
return 1;
}
template <class T>
void linked_Queue<T>::ins_linked_Queue(T b)
{
node<T> *p;
p=new node<T>;
p->d=b;
p->next=NULL;
if(rear==NULL)
front=p;
else
rear->next=p;
rear=p;
return;
}
template <class T>
T linked_Queue<T>::del_linked_Queue()
{
T y;
node<T> *q;
if(front==NULL)
{
cout<<"空隊"<<endl;
return 0;
}
y=front->d;
q=front;
front=q->next;
delete q;
if(front==NULL)rear=NULL;
return(y);
}
應用例項:
#include "linked_Queue.h"
#include <stdlib.h>
int main()
{
linked_Queue<int> q;
q.ins_linked_Queue(50);
q.ins_linked_Queue(60);
q.ins_linked_Queue(70);
q.ins_linked_Queue(80);
q.ins_linked_Queue(90);
q.ins_linked_Queue(100);
cout<<"輸出帶鏈佇列中的元素"<<endl;
q.prt_linked_Queue();
if(q.flag_linked_Queue())
cout<<"輸出退隊元素:"<<q.del_linked_Queue()<<endl;
if(q.flag_linked_Queue())
cout<<"輸出退隊元素:"<<q.del_linked_Queue()<<endl;
if(q.flag_linked_Queue())
cout<<"輸出退隊元素:"<<q.del_linked_Queue()<<endl;
cout<<"再次輸出帶鏈佇列中的元素"<<endl;
q.prt_linked_Queue();
system("pause");
return 0;
}
實驗結果:
相關文章
- 鏈式佇列佇列
- 佇列(楊輝三角)——鏈式佇列佇列
- 佇列-鏈式儲存佇列
- 單向鏈式佇列佇列
- 鏈式佇列—用連結串列來實現佇列佇列
- 【資料結構】佇列(順序佇列、鏈佇列)的JAVA程式碼實現資料結構佇列Java
- 連結串列&鏈棧&佇列佇列
- 鏈式儲存的佇列佇列
- 鏈式佇列的實現方式佇列
- java集合類——Stack棧類與Queue佇列Java佇列
- 佇列的鏈式儲存結構佇列
- 佇列、阻塞佇列佇列
- 帶你玩轉RabbitMQ的五種佇列MQ佇列
- 佇列-單端佇列佇列
- 佇列 和 迴圈佇列佇列
- 【佇列】【懶排序】佇列Q佇列排序
- php使用佇列 SplQueue類學習記錄PHP佇列
- 【php實現資料結構】鏈式佇列PHP資料結構佇列
- 陣列模擬佇列 以及佇列的複用(環形佇列)陣列佇列
- 佇列 手算到機算 入門 佇列 迴圈佇列佇列
- 圖解--佇列、併發佇列圖解佇列
- 單調佇列雙端佇列佇列
- 佇列佇列
- 【RabbitMQ】一文帶你搞定RabbitMQ延遲佇列MQ佇列
- 10個隊中非空佇列按佇列號從小到大的順序串接成一條鏈佇列
- 佇列的鏈式儲存結構的實現佇列
- c++佇列類别範本的實現C++佇列
- RabbitMQ 訊息佇列之佇列模型MQ佇列模型
- Kafka 延時佇列&重試佇列Kafka佇列
- Java版-資料結構-佇列(陣列佇列)Java資料結構佇列陣列
- C語言 簡單的佇列(陣列佇列)C語言佇列陣列
- 稀疏陣列、佇列陣列佇列
- 阻塞佇列一——java中的阻塞佇列佇列Java
- 07-主佇列和全域性佇列佇列
- synchronized 中的同步佇列與等待佇列synchronized佇列
- 資料結構實驗5、鏈佇列的基本操作資料結構佇列
- 8-佇列的鏈式儲存結構的操作佇列
- 動畫佇列動畫佇列