999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

棧和隊列教學實例在數據結構中的應用研究

2017-06-05 20:26:48洪新華洪新建
大陸橋視野·下 2017年4期

洪新華+洪新建

湖南生物機電職業技術學院

【摘 要】棧和隊列是一種特殊的線性結構,從數據結構的角度看它們是線性表,從操作的角度上看它們是操作受限制的線性表。在日常生活中棧和隊列也有廣泛的應用,如鐵路調度、民航機票訂購等。在停車場管理系統的應用研究中,狹長的停車通道符合棧的后進先出、便道的管理符合隊列的先進先出操作特性,基于此特性研究如何利用棧和隊列來模擬停車場管理的問題。

【關鍵詞】數據結構;線性表;棧;隊列

一、數據結構概述

數據結構課程是計算機相關專業學生必修的重要專業基礎課,同時也是專業基礎課中具有一定難度的課程。它的主要研究的內容就是數據在計算機中的邏輯結構、存儲結構以及設計相應的算法對數據進行各種操作。簡而言之就是數據結構=邏輯結構+存儲結構+算法,其中以算法為中心,算法的設計取決于數據的邏輯結構,算法的實現取決于數據的物理存儲結構。數據結構是軟件開發類課程的最重要的先修課程之一,學好數據結構是參加計算機各類考試的必備要求,是培養變成能力的必由之路,同時為計算機各門專業課程學習提供良好的基礎。數據結構的研究不僅涉及到計算機硬件的研究范圍,而且和計算機軟件的研究有著更密切的關系,無論是編譯程序還是操作系統,都涉及到數據元素在存儲器中的分配問題。數據結構中的邏輯結構研究主要有線性結構和非線性結構,線性結構中線性表是一種最常用的線性結構,其中棧和隊列是兩種典型的線性表。棧被廣泛應用于編譯軟件和程序設計中,而隊列在計算機操作系統和事務管理中得到廣泛的應用。

二、棧和隊列在模擬停車場管理中的應用

停車場管理系統一般都采用棧+隊列來模擬管理程序設計。假設停車場是一個可停放n輛汽車的狹長通道,且只有一個大門可供汽車進出。車輛按到達停車場時間的先后順序從停車場最里面向門口處停放(最先到達的第一輛車停在停車場最里面)。如果停車場已經停滿了n輛車,則后來的車輛只能在停車場大門外的便道上等待。如果停車場內有車要開走,則排在便道上的第一輛車就可以進入停車場。當某輛車要離開時,在他之后進入的車輛必須先退出停車場為它讓路,待其開出停車場后,其他車輛再按原次序進入停車場。停車場的管理是最先進去的車輛在最前面,符合棧的后進先出操作特性。在停車場內有空余車位的時候便道上的車輛按到達順序先行停放則符合隊列的特征。該問題便可以采用棧+隊列加以實現。

三、任務分析

(一)數據結構描述

由于停車場只有一個大門,因此可以用一個棧來模擬。在便道停車的問題上,因為先排隊的車輛先離開便道進入停車場,可以采用一個隊列來模擬。又因為該停車場是狹長的停車場,停在中間的車輛是可以提前離開的,為了解決這個問題,我們還需要一個臨時地方(車輛規避所)保留為了讓路離開停車場的車輛,很顯然這個問題也需要用一個棧來實現,在程序中可以采用兩個順序棧s1和s2來表示停車場和車輛規避所,設置一個鏈隊q表示便道,棧和隊列定義如圖:

(二)系統主要功能設計與實現

1.車輛到達。

void Arrive(SqStack *s1,LQueue *q,ElemType x);

此函數用以表示當車輛x到達時,判斷棧s1是否滿,若未滿就將車輛x進棧s1,若棧已滿,就將車輛x入隊列q,表示車輛x在便道上等待進入停車場。

此函數用以表示當車輛x要離去時,就在棧s1中尋找此車牌號的車輛,如果找到則讓其離開停車場,且根據其停車時間收費,此車離開后將隊列q的隊頭元素進棧s1,如果沒找到,則在隊列q中去尋找此車牌號碼的車,如果找到,則允許離開隊列,但不收費,如找不到則顯示錯誤信息,在車輛離開停車場時,如果該車輛位于棧s1的中間位置時,需將此位置到棧頂之間的所有車輛退到棧s2,然后該車輛出棧,然后將棧s2中的車輛倒回棧s1。

2.信息查詢。

可以查詢車位空閑數目、車位停車情況等。如果車位未滿,提示便道上等待的車輛可以進入停車場;如果車位己滿,不允許車輛進入停車場,只能在便道上等待。

3.停車場車輛信息。

顯示停車場內每一停車位上是否有車,若有顯示該車的車牌號、到達時間。統計停車場內車輛數目以及空車位數目。先輸入到達車輛的車牌號,若停車場未滿,則車進停車場,輸入到達時間,記錄該車輛在停車場的位置。若停車場己滿,則車進便道,記錄該車在便道的位置。便道的管理是最先到達的車輛在最前面,一旦停車場有空位,最前面的車輛最先進入停車場,符合隊列的先進先出操作特性??梢杂靡粋€鏈隊來實現,此時只需要改變便道上車輛結點的連接方式,將模擬便道的鏈隊頭結點連到原來的第二輛車上就可以了。

四、結束語

棧和隊列是一種常見的數據結構模型,在日常工作生活中有很廣泛的應用,真正的把握好這兩個數據結構模型對于程序設計來說有很重要的現實意義。

參考文獻:

[1]韋斯.數據結構與算法分析:Java語言描述(第2版)[M].機械出版社,2009(1)

[2]陳雁.數據結構[M].北京:高等教育出版社,2010(12)

[3]梅因.數據結構與面向對象程序設計(C++版) [M].北京:清華大學出版社,2012(5)

主站蜘蛛池模板: 玖玖精品在线| 精品撒尿视频一区二区三区| 91精品综合| 欧美成人免费一区在线播放| 亚洲人成网站色7777| 欧美成人亚洲综合精品欧美激情| 国产精品v欧美| 九色视频在线免费观看| 九色综合视频网| 国产精品一区二区久久精品无码| AV熟女乱| 夜夜拍夜夜爽| 中文字幕有乳无码| 视频国产精品丝袜第一页| 91色在线观看| 国产欧美精品一区二区| 亚洲欧美日韩视频一区| 自慰高潮喷白浆在线观看| 六月婷婷激情综合| 好久久免费视频高清| 色视频久久| 天堂网亚洲系列亚洲系列| 无码国产伊人| 成人精品区| 国产午夜无码专区喷水| 很黄的网站在线观看| 日本午夜影院| 五月婷婷中文字幕| 久久精品人妻中文视频| 国产无码高清视频不卡| 99久视频| 国产91视频免费| 日本一本正道综合久久dvd| 亚洲经典在线中文字幕| 久久久久人妻一区精品色奶水| 亚洲愉拍一区二区精品| 三上悠亚精品二区在线观看| 亚洲国产中文欧美在线人成大黄瓜 | 国产全黄a一级毛片| 国产亚洲男人的天堂在线观看| 亚洲国产精品无码AV| 国产欧美日韩18| www中文字幕在线观看| 亚洲欧美不卡视频| 久久人妻系列无码一区| 19国产精品麻豆免费观看| 久久永久精品免费视频| 91精品国产自产在线老师啪l| 成人福利在线免费观看| 久久久国产精品无码专区| 亚洲a级在线观看| 午夜天堂视频| 尤物精品国产福利网站| 韩日无码在线不卡| 日韩第一页在线| 日韩精品一区二区三区免费| 国产无人区一区二区三区| 天天综合色天天综合网| 欧美福利在线播放| 女人爽到高潮免费视频大全| 国产微拍一区| 日韩最新中文字幕| 日韩东京热无码人妻| 中文字幕免费在线视频| 色综合中文字幕| 欧美成人综合视频| 怡春院欧美一区二区三区免费| 欧美三級片黃色三級片黃色1| 久久精品视频一| 香蕉精品在线| 日韩福利在线视频| 九九热这里只有国产精品| 中文字幕 欧美日韩| 国产91线观看| 婷婷亚洲最大| 亚洲av无码专区久久蜜芽| 国产一级毛片在线| 亚洲第一成年网| 人妻中文久热无码丝袜| 亚洲视频欧美不卡| 亚洲成人黄色在线| 91探花国产综合在线精品|