天天看點

隊列

隊列是一個有序清單,可以用數組或是連結清單來實作。

遵循先入先出原則。

示意圖:(使用數組模拟隊列示意圖)

隊列

如下圖:front指向隊列頭部即指向隊列頭的前一個位置,rear指向隊尾即指向隊列尾的資料,maxSize是隊列的最大容量。front随着資料輸出而改變,rear随着資料輸入而改變。

front和rear的初始值為-1。

空條件:<code>front == rear</code>

滿條件:<code>rear == maxSize - 1</code>

隊列
數組隻能使用一次。無法達到複用效果。

将數組看作環形,通過取模的方式實作。

front指向隊列的第一個元素。

rear指向隊列的最後一個元素的後一個位置。

front 和 rear 初始值都為 0。

有效資料個數: <code>(rear - front + maxSize) % maxSize</code>

空條件:<code>(rear + 1) % maxSize == front</code>

滿條件:<code>rear == front</code>

上一篇: 求協方差