隊列——數組隊列
阿新 • • 發佈:2019-03-04
ava obj arr array auth return this inf ctu
隊列是一種先進先出,支持隊尾插入,在對頭刪除元素。
如有不會的地方請指出,共同提高,謝謝!!!
如下圖:
下面就看下代碼吧:
package com.shenqi.dataStructure.queue; /** * @Author:shenqi * @Description: 數組隊列 * @Date:2019/1/23 12:14 */ public class ArrayQueue { private int size; private int count; private Object[] array; private int next; public ArrayQueue(int size) { this.size = size; array = new Object[size]; } /** * 入隊 * * @param obj * @return */ public boolean enqueue(Object obj) { if (size == count) { if (next == 0) return false; // 數據搬動 for (int i = next; i < count; i++) { array[i - next] = array[i]; } count -= next; next = 0; } array[count] = obj; count++; return true; } /** * 出隊 * * @return */ public Object dequeue() { if (count == 0) return null; if (next == size) return null; Object obj = array[next]; next++; return obj; } }
隊列——數組隊列