日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java 头尾 队列_Java数据结构之队列(动力节点Java学院整理)

發布時間:2023/12/10 java 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 头尾 队列_Java数据结构之队列(动力节点Java学院整理) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

隊列的定義:

隊列(Queue)是只允許在一端進行插入,而在另一端進行刪除的運算受限的線性表。

(1)允許刪除的一端稱為隊頭(Front)。

(2)允許插入的一端稱為隊尾(Rear)。

(3)當隊列中沒有元素時稱為空隊列。

(4)隊列亦稱作先進先出(First In First Out)的線性表,簡稱為FIFO表。

隊列的修改是依先進先出的原則進行的。新來的成員總是加入隊尾,每次離開的成員總是隊列頭上的(不允許中途離隊)。

隊列的存儲結構及實現

隊列的順序存儲結構

(1) 順序隊列的定義:

隊列的順序存儲結構稱為順序隊列,順序隊列實際上是運算受限的順序表。

(2)順序隊列的表示:

和順序表一樣,順序隊列利用內存中一段連續的存儲空間來存放當前隊列中的元素。

由于隊列的隊頭和隊尾的位置是變化的,設置兩個指針front和rear分別指示隊頭元素和隊尾元素,它們的初值在隊列初始化時均應置為0。

(3)順序隊列的基本操作

入隊時:將新元素插入rear所指的位置的后一位。

出隊時:刪去front所指的元素,然后將front加1并返回被刪元素。

(4)順序表的溢出現象

①“下溢”現象

當隊列為空時,做出隊運算產生的溢出現象。“下溢”是正常現象,常用作程序控制轉移的條件。

② "真上溢"現象

當隊列滿時,做進棧運算產生空間溢出的現象。“真上溢”是一種出錯狀態,應設法避免。

③ "假上溢"現象

由于入隊和出隊操作中,頭尾指針只增加不減小,致使被刪元素的空間永遠無法重新利用。當隊列中實際的元素個數遠遠小于內存中本分配的空間時,也可能由于尾指針已超越向量空間的上界而不能做入隊操作。該現象稱為"假上溢"現象。如下圖

循環隊列:

如上圖所示,這種頭尾相接的順序存儲結構稱為循環隊列(circular queue)。

循環隊列中需要注意的幾個重要問題:

①隊空的判定條件,隊空的條件是front=rear;

②隊滿的判定條件,(rear+1)%QueueSize=front。QueueSize為隊列初始空間大小。

循環隊列的java實現代碼

以上所述是小編給大家介紹的Java數據結構之隊列(動力節點Java學院整理),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

總結

以上是生活随笔為你收集整理的java 头尾 队列_Java数据结构之队列(动力节点Java学院整理)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。