佇列是一種線性結構,具有先進先出的特點,以下是3種佇列基本操作的c++**:
//鏈式佇列
#include
#include
using
namespace
std;
vector
a;class node ;
class linkqueue ;
//初始化佇列
void linkqueue::initqueue(linkqueue &q)
//入隊
void linkqueue::ennode(linkqueue &q)
//遍歷佇列
void linkqueue::ouputnode(linkqueue &q)
else
cout
<< "該佇列元素:";
while (p!=null)
cout
/佇列判空
void linkqueue::isempty(linkqueue &q)
else
cout
<< "該佇列不是空佇列"
<< endl;
}//出隊
void linkqueue::delfirstnode(linkqueue &q)
//獲取佇列長度
void linkqueue::getlength(linkqueue &q)
cout
<< "該佇列的長度 = "
<< count;
}//佇列查詢
void linkqueue::findnode(linkqueue &q,int value)
n = n + 1;
p = p->next;
}cout
<< endl;
if (a.empty() == 1)
else
}cout
<< endl;
}//銷毀佇列
void linkqueue::destroynode(linkqueue &q)
}void main()
que.ouputnode(*q);
que.getlength(*q);
que.delfirstnode(*q);
que.ouputnode(*q);
q->isempty(*q);
que.getlength(*q);
que.findnode(*q,5);
q->destroynode(*q);
}
**執行結果:
//順序佇列
#include
using
namespace
std;
class
queue
~queue()
//入隊
void insertval(int v)
}//獲取首元素
void getfirval()
}//刪除首元素
void delfirval()
}//遍歷佇列
void outputval()
cout
<< endl;
}private:
int *data;
int length, head, tail;
};int main()
que.getfirval();
que.outputval();
cout
<< "刪除元素";
que.delfirval();
que.getfirval();
que.outputval();
return
0;}
**執行結果:
//迴圈佇列
#include
using
namespace
std;
class circularqueue
~circularqueue()
//入隊
void insertval(int value)
}//獲取佇列首元素
void getfirval()
cout
<< endl;
}//刪除元素
void delfirval()
}//遍歷佇列
void outputval()
cout
<< "該佇列長度="
<< num << endl;
}//佇列判空
void isempty()
else
cout
<< "該佇列未滿"
<< endl;
}private:
int *data;
int head, tail, length, count;
};int main()
que.getfirval();
que.outputval();
que.delfirval();
que.getfirval();
cout
<< "刪除乙個元素";
que.outputval();
que.isempty();
return
0;}
**執行結果: c 實現佇列
主要是想聯絡一下c 中的模板怎麼使用,隨便複習一下佇列。佇列最基本的資料結構元素先進先出,這些就不多說了。注意 寫程式時copy建構函式和copy賦值函式的寫法。include includeusing namespace std templateclass queueitem queueitem ...
C 實現佇列
像棧一樣,佇列 queue 也是表。然而,使用佇列時插入在一端進行而刪除則在另一端進行,也就是先進先出 fifo 佇列的基本操作是enqueue 入隊 它是在表的末端 叫做隊尾 rear 插入乙個元素 還有dequeue 出隊 它是刪除 或返回 在表的開頭 叫做隊頭 front 的元素。同樣,佇列也...
C 佇列實現
原理 queue 佇列也是乙個線性儲存表,元素資料的插入在表的一端進行,在另一端刪除,從而構成了乙個先進先出fifo first in first out 表。隊頭 隊尾 插入一端稱為隊尾,刪除一端稱為隊首。c 佇列是一種容器介面卡,預設使用雙端佇列deque來實現,將 deque 容器轉換為 qu...