使用Array建立Queue — C++

Sharon Peng
3 min readSep 16, 2020

--

這次來介紹的是Queue,中文稱為「佇列」。

先來對Queue做個簡短的說明:

什麼是Queue?

先舉個例子來看,今天去遊樂園買票的時候,一定是先到售票處的人可以先買票,並且可以先進去,最後到的人最後進去。非常直觀的想法。

而我們的Queue就是基於這個精神來使用,First In First Out(FIFO)「先進先出」,「後進後出」。

在C++中也有Queue的函式可以直接使用,用法就跟Stack差不多。

我們可以把queue想成是一種裝資料的容器就像水管一樣,頭尾都有空隙可以流出水來。

1. empty():檢查Queue裡面是不是沒有元素。是空的話,回傳 True

2. size():回傳Queue裡面的元素數量

3. push():把資料從的部分放入Queue裡面。

4. pop():把資料從頭的部分丟出Queue外。

5. front():回傳最先丟進去的數,以圖片來看,是最右邊的數字 (1)。

6. back():回傳最後丟進去的數,以圖片來看,是最左邊的數字 (4)

想要更加了解的話可以點這裡

再來就到我們的實作部分:(用array去建立一個Queue)

這次用struct的型態去建立一個 Queue的結構

1. 首先先想我們需要哪幾個變數,front, rear, arr

2. 再來是我們要建立幾個函式給Queue

為了方便實作,我程式碼的部分,會跟原本圖的方向有些不同。如下圖

可能會不太懂pop()怎麼運作,所以這邊做了張圖

以下為程式碼:

希望這次的解說能夠幫助到大家更加理解Qeueu的運作~~

--

--

Sharon Peng
Sharon Peng

Written by Sharon Peng

一起精進程式能力吧!!

No responses yet