隊(duì)列應(yīng)用

隊(duì)列是一種先進(jìn)先出的數(shù)據(jù)結(jié)構(gòu),我們可以將其假設(shè)為一個(gè)排隊(duì)機(jī)制,廣泛應(yīng)用于計(jì)算機(jī)的各個(gè)領(lǐng)域纯出,包括操作系統(tǒng)的作業(yè)調(diào)度,用于緩沖區(qū),網(wǎng)絡(luò)中的路由緩沖包區(qū)暂筝。

隊(duì)列的結(jié)構(gòu)由兩個(gè)標(biāo)志組成箩言,不同于棧的一個(gè)標(biāo)志,空時(shí)tos=-1焕襟。由font與rear組成陨收。

一般的隊(duì)列我們可以通過(guò)調(diào)用linkedlist來(lái)實(shí)現(xiàn)queue的功能,此隊(duì)列通過(guò)鏈表實(shí)現(xiàn)胧洒。

這里著重說(shuō)一下循環(huán)隊(duì)列畏吓,數(shù)組實(shí)現(xiàn)(由于鏈表過(guò)于繁瑣)。

定義四個(gè)方法:

是否為空:font==rear

是否滿(mǎn):(rear+1)% length==font 卫漫。說(shuō)明:font指向?qū)κ衷胤票瑀ear指向隊(duì)尾元素的下一個(gè),若隊(duì)列為滿(mǎn)列赎,正常應(yīng)該font==rear宏悦,就會(huì)與空時(shí)重復(fù)。為了避免這一問(wèn)題包吝,我們定義留一個(gè)字符表示隊(duì)列滿(mǎn)饼煞。

入隊(duì):array【rear】=value。注意:rear要++诗越,同時(shí)注意rear要小于10砖瞧,若大于,則從0開(kāi)始計(jì)數(shù) 嚷狞,這樣才能保證循環(huán)块促。

出隊(duì):同于入隊(duì),只不過(guò)是font的操作床未。


隊(duì)列定義部分結(jié)束竭翠,借這個(gè)空閑說(shuō)說(shuō)內(nèi)部類(lèi)

內(nèi)部類(lèi)的好處:


1 成員內(nèi)部類(lèi)與靜態(tài)內(nèi)部類(lèi)的區(qū)別:

一個(gè)在編譯時(shí)會(huì)生成指向外部類(lèi)的一個(gè)引用,這樣在調(diào)用時(shí)需要先生成外部了的對(duì)象薇搁,之后new內(nèi)部類(lèi)斋扰。而另一個(gè)再生成對(duì)象時(shí)直接調(diào)用即可。

靜態(tài)內(nèi)部類(lèi)不可以使用外部類(lèi)非靜態(tài)的變量與方法啃洋,但在自己的類(lèi)中可以定義非靜態(tài)的屬性與方法传货。

很奇怪吧。

2 匿名內(nèi)部類(lèi):兩種定義方式:button.addlistner(new actionListner(){實(shí)現(xiàn)接口的抽象方法});

定義線(xiàn)程時(shí):Thread t=new Thread(new Runnable(){run(){}});?

兩種方式異曲同工裂允,都是定義的接口引用的具體實(shí)現(xiàn)损离,格式是new+接口,可能有些困惑绝编。

接著說(shuō)隊(duì)列僻澎,下面說(shuō)一下隊(duì)列的應(yīng)用:舞伴問(wèn)題貌踏、楊輝三角問(wèn)題、游標(biāo)編碼問(wèn)題窟勃。


楊輝三角:程序輸入行數(shù)祖乳,打印出相應(yīng)行的二項(xiàng)式系數(shù):

脫了這么久,今天終于可以把它完成了:




結(jié)束

游標(biāo)編碼問(wèn)題就是一個(gè)統(tǒng)計(jì)字符串?dāng)?shù)字個(gè)數(shù)的問(wèn)題秉氧,相對(duì)來(lái)說(shuō)比較簡(jiǎn)單眷昆,只需一個(gè)字符串即可,在這里不再贅述汁咏。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末亚斋,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子攘滩,更是在濱河造成了極大的恐慌帅刊,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,185評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件漂问,死亡現(xiàn)場(chǎng)離奇詭異赖瞒,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)蚤假,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門(mén)栏饮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人磷仰,你說(shuō)我怎么就攤上這事袍嬉。” “怎么了灶平?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,524評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵冬竟,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我民逼,道長(zhǎng),這世上最難降的妖魔是什么涮帘? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,339評(píng)論 1 293
  • 正文 為了忘掉前任拼苍,我火速辦了婚禮,結(jié)果婚禮上调缨,老公的妹妹穿的比我還像新娘疮鲫。我一直安慰自己,他們只是感情好弦叶,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評(píng)論 6 391
  • 文/花漫 我一把揭開(kāi)白布俊犯。 她就那樣靜靜地躺著,像睡著了一般伤哺。 火紅的嫁衣襯著肌膚如雪燕侠。 梳的紋絲不亂的頭發(fā)上者祖,一...
    開(kāi)封第一講書(shū)人閱讀 51,287評(píng)論 1 301
  • 那天,我揣著相機(jī)與錄音绢彤,去河邊找鬼七问。 笑死,一個(gè)胖子當(dāng)著我的面吹牛茫舶,可吹牛的內(nèi)容都是我干的械巡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,130評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼饶氏,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼讥耗!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起疹启,我...
    開(kāi)封第一講書(shū)人閱讀 38,985評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤古程,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后皮仁,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體籍琳,經(jīng)...
    沈念sama閱讀 45,420評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評(píng)論 3 334
  • 正文 我和宋清朗相戀三年贷祈,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了趋急。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,779評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡势誊,死狀恐怖呜达,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情粟耻,我是刑警寧澤查近,帶...
    沈念sama閱讀 35,477評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站挤忙,受9級(jí)特大地震影響霜威,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜册烈,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評(píng)論 3 328
  • 文/蒙蒙 一戈泼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧赏僧,春花似錦大猛、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,716評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至驾中,卻和暖如春唉堪,著一層夾襖步出監(jiān)牢的瞬間模聋,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,857評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工巨坊, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留撬槽,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,876評(píng)論 2 370
  • 正文 我出身青樓趾撵,卻偏偏與公主長(zhǎng)得像侄柔,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子占调,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 1 RabbitMQ安裝部署 這里是ErLang環(huán)境的下載地址http://www.erlang.org/down...
    Bobby0322閱讀 2,236評(píng)論 0 11
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法暂题,類(lèi)相關(guān)的語(yǔ)法,內(nèi)部類(lèi)的語(yǔ)法究珊,繼承相關(guān)的語(yǔ)法薪者,異常的語(yǔ)法,線(xiàn)程的語(yǔ)...
    子非魚(yú)_t_閱讀 31,625評(píng)論 18 399
  • 1.import static是Java 5增加的功能,就是將Import類(lèi)中的靜態(tài)方法剿涮,可以作為本類(lèi)的靜態(tài)方法來(lái)...
    XLsn0w閱讀 1,222評(píng)論 0 2
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理言津,服務(wù)發(fā)現(xiàn),斷路器取试,智...
    卡卡羅2017閱讀 134,654評(píng)論 18 139
  • 有時(shí)我們需要?jiǎng)h除Excel中重復(fù)的行悬槽,如果采用手動(dòng)的方法來(lái)操作,難免會(huì)顯得麻煩瞬浓,尤其是記錄很多的時(shí)候初婆。下面feif...
    zfl1024閱讀 497評(píng)論 0 0