點(diǎn)擊查看:2015年計(jì)算機(jī)二級(jí)公共基礎(chǔ)知識(shí)復(fù)習(xí)知識(shí)點(diǎn)匯總
隊(duì)列及其基本運(yùn)算
1)隊(duì)列
隊(duì)列即是允許在一端進(jìn)行插入,而在另一端進(jìn)行刪除的線性表。允許插入的一端稱為隊(duì)尾,通常用一個(gè)尾指針指向隊(duì)尾;允許刪除的一端稱為隊(duì)首,通常用一個(gè)隊(duì)首指針指向排隊(duì)元素的前一個(gè)位置。
隊(duì)列遵循的規(guī)則是:先進(jìn)先出或后進(jìn)后出
2)循環(huán)隊(duì)列及其運(yùn)算
隊(duì)列的順序存儲(chǔ)結(jié)構(gòu)一般采用循環(huán)隊(duì)列的形式。
循環(huán)隊(duì)列,即是次隊(duì)列存儲(chǔ)空間的最后一個(gè)位置繞到第一個(gè)位置,形成邏輯上的環(huán)狀空間,供隊(duì)列循環(huán)使用。
在循環(huán)隊(duì)列中,用隊(duì)尾指針rear指向隊(duì)列中的隊(duì)尾元素,用排頭指針front指向排頭元素的前一個(gè)位置,因此,從排頭指針front指向的后一個(gè)位置到隊(duì)尾指針rear指向的位置之間所有的元素均為隊(duì)列中的元素。
循環(huán)隊(duì)列的初始狀態(tài)為空,即rear=front=m。這里m即為隊(duì)列的存儲(chǔ)空間。
循環(huán)隊(duì)列的基本運(yùn)算:入隊(duì)運(yùn)算和退隊(duì)運(yùn)算。
入隊(duì)運(yùn)算:每進(jìn)行一次入隊(duì)運(yùn)算,隊(duì)尾指針加1。當(dāng)隊(duì)尾指針rear=m+1時(shí),即表示隊(duì)列空間的尾部已經(jīng)放置了元素,則下一個(gè)元素應(yīng)該旋轉(zhuǎn)到隊(duì)列空間的首部,即rear=1
退隊(duì)運(yùn)算:每退隊(duì)一個(gè)元素,排頭指針加1。當(dāng)排頭指針front=m+1時(shí),即排頭指針指向隊(duì)列空間的尾部,退隊(duì)后,排頭指針指向隊(duì)列空間的開始,即front=1。
在隊(duì)列操作時(shí),循環(huán)隊(duì)列滿時(shí),front=rear,隊(duì)列空時(shí),也有rear=front,即在隊(duì)列空或滿時(shí),排頭指針和隊(duì)尾指針均指向同一個(gè)位置。要判斷隊(duì)列空或滿時(shí),還應(yīng)增加一個(gè)標(biāo)志,s值的定義:
判斷隊(duì)列空與隊(duì)列滿的條件下:
隊(duì)列空的條件:s=0
隊(duì)列滿的條件:s=1、front=rear
(1)入隊(duì)運(yùn)算(2)退隊(duì)操作
相關(guān)推薦:
2015計(jì)算機(jī)二級(jí)公共基礎(chǔ)知識(shí)精選選擇題專項(xiàng)練習(xí)
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |