天天看點

自定義線性及非線性存儲的隊列實作

在平時的程式設計中,隊列可以應用于很多方面。

在生活中我們同樣可以随處見到它的身影,比如我們排隊,先排的人先得到服務,後進來的人後接受服務。這就是隊列。

說白了,就是FIFO原則(First in First out, 先進先出)。

隊列的實作是基于存儲結構不同而不同的,通常會有兩種方式存儲。線性存儲或者非線行存儲。

1、線性存儲。是基于數組等長度固定的存儲方式來實作的。我這裡是先定義了一個接口,然後基于接口來實作的。

下面請看代碼,

接下來是測試類:

然後就是我們的測試結果了:

2、當然也可以使用非線性的存儲結構來實作隊列,好處是可以避免“假溢出”的現象,充分的利用到空間。

下面是代碼實作:

下面是我的測試代碼:

下面是測試的結果:

結果分析: