環形佇列,個人粗粗的理解,可以反覆使用,上一張寫的資料模擬佇列是乙個一次性佇列用過就不能用了,環形佇列是取出資料後可重複利用空餘時間。
可用2 已用
3 已用
public static void main(string args) catch (exception e)break;
case 'a':
system.out.println("請輸入乙個數字");
int value = sc.nextint();
queue.addqueue(value);
break;
case 'h':
int h = queue.headqueue();
system.out.printf("頭資料為:%d\n", h);
break;
case 'e':
loop = false;
break;}}
}}class circlequeue
//檢視方法
public void showqueue()
/*** front 開始遍歷,問題是有多少個資料 front + ? ,注意front 環形佇列
*/for (int i = front; i < front + size(); i++)
}//新增方法
public boolean addqueue(int ele)
arr[rear] = ele;
rear = (rear + 1) % maxsize;
return true;
}//獲取方法
public int getqueue()
int value = arr[front];
front = (front + 1) % maxsize;
return value;
}//顯示頭佇列
public int headqueue()
public void isnull()
}/**
* 環形佇列中有效資料個數
** @return
*/public int size()
庖丁解牛 資料結構(二)之陣列模擬佇列
佇列是一種特殊的線性表,特殊之處在於它只允許在表的前端 front 進行刪除操作,而在表的後端 rear 進行插入操作,和棧一樣,佇列是一種操作受限制的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。去銀行排對取錢 public class arrayqueuedemo catch ex...
庖丁解牛 資料結構(一)之稀陣列
稀疏陣列可以看做是普通陣列的壓縮,簡單點 稀疏陣列中都是有用資料且,結構int sparsearray new int sum 1 3 說明 sum為二維陣列中有用資料個數。棋盤 標準的二維陣列 11 11 0代表無子 1 代表黑子 2 代表 白子 將上述二維陣列轉為稀疏陣列如下展示 說明 第一行 ...
資料結構之陣列模擬棧
棧的特點即先進後出,採用陣列模擬棧,實現棧的這一特性主要是靠定義乙個指標 索引 指標的初始位置指向的是 1 以下給出 package com.ebiz.stack author yhj create 2019 07 20 14 20 陣列模擬棧 public class arraystack 驗證棧...