C++棧和隊列

使用標準庫的棧和隊列時,先包含相關的頭文件

#include<stack>

#include<queue>

定義棧如下:

stack<int> stk;

定義隊列如下:

queue<int> q;

棧提供瞭如下的操作

s.empty()               如果棧爲空返回true,否則返回false  
s.size()                返回棧中元素的個數  
s.pop()                 刪除棧頂元素但不返回其值  
s.top()                 返回棧頂的元素,但不刪除該元素  
s.push()                在棧頂壓入新元素  
隊列提供了下面的操作

q.empty()               如果隊列爲空返回true,否則返回false  
q.size()                返回隊列中元素的個數  
q.pop()                 刪除隊列首元素但不返回其值  
q.front()               返回隊首元素的值,但不刪除該元素  
q.push()                在隊尾壓入新元素  
q.back()                返回隊列尾元素的值,但不刪除該元素  
<ul class="custom_dot para-list list-paddingleft-1" style="margin: 0px 0px 14px 2em; padding: 0px; list-style: none; font-family: arial, 宋體, sans-serif; font-size: 14px; line-height: 24px;"><li class="list-dot list-dot-paddingleft" style="margin: 0px; padding: 0px 0px 0px 14px; list-style-type: none; background-image: url(http://img.baidu.com/img/baike/editor/list/dot.gif); background-position: 0px 6px; background-repeat: no-repeat;"><div class="para" style="color: rgb(51, 51, 51); margin: 0px;">注意:pop()雖然會移除下一個元素,但是並不返回它,front()和back()返回下一個元素但並不移除該元素。</div></li></ul>

隊列的基本運算:

(1)初始化隊列 Qini (Q)
(2)入隊 QADD(Q,X)
(3)出隊 QDel(Q,X)
(4)判斷隊列是否爲空 qempty(Q)
(5)判斷隊列是否爲滿qfull(Q)



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章