隊列是一種線性存儲結構,他有以下特點: 1.隊列中數據是按照“先進先出”方式進出隊列的 2.隊列只允許在“隊首”進行刪除操作,在“隊尾”進行插入操作 3.隊列通常包含兩種操作:入隊列和出隊列 使用數組實現隊列 定義一個類ArrayQueue 實現入隊列方法push() 實現出隊列方法pop() 實現 ...
隊列是一種線性存儲結構,他有以下特點:
1.隊列中數據是按照“先進先出”方式進出隊列的
2.隊列只允許在“隊首”進行刪除操作,在“隊尾”進行插入操作
3.隊列通常包含兩種操作:入隊列和出隊列
使用數組實現隊列
定義一個類ArrayQueue
實現入隊列方法push()
實現出隊列方法pop()
實現返回隊首方法front()
實現返回隊列長度方法size()
public class ArrayQueue { private int[] mArray; private int mCount; public ArrayQueue(int num) { mArray=new int[num]; mCount=0; } /** * 入隊列 * @param item */ public void push(int item){ mArray[mCount]=item; mCount++; } /** * 出隊列 * @return */ public int pop(){ int top=mArray[0]; mCount--; //往前移動一元素 for(int i=1;i<=mCount;i++){ mArray[i-1]=mArray[i]; } return top; } /** * 隊列長度 * @return */ public int size(){ return mCount; } /** * 列印數組 */ public void print(){ for(int i=0;i<=mCount-1;i++){ System.out.print(mArray[i]+","); } } /** * @param args */ public static void main(String[] args) { ArrayQueue queue=new ArrayQueue(3); queue.push(5); queue.push(6); queue.push(7); queue.print();//輸出 5,6,7, queue.pop(); queue.print();//輸出 6,7, queue.push(8); queue.print();//輸出 6,7,8, } }