佇列:只能一端進行出棧一端進行進棧。
隊首:只允許進行出棧操作,可以進行刪除。
隊尾:只允許進行入棧操作,可以進行插入。
隊尾進,隊尾出,先進先出。
所以佇列的實現也有兩種形式,一種是陣列實現佇列,一種是用鍊錶實現佇列。
首先是用陣列來實現佇列。
使用陣列佇列,因為在刪除時front會越來越大,所以最後會出現一種還有空間但是卻顯示無空間的現象。
解決方法:
構建迴圈佇列,演算法為:
判斷是否隊滿:(rear+1)%a.length==front //如果相等的話則證明佇列已滿
rear=(rear+1)%a.length; //建立迴圈
實現**:
public class queue
queue(int n)
public boolean add(node node)
} public node remove()
} public boolean isempty()
public int size()
}
迴圈佇列(順序佇列)的實現
迴圈佇列 順序佇列 的實現 include include include include define n 6 定義資料型別 typedef int datatype t 定義結構體 typedef structsequeue t sequeue t sq 建立乙個空的佇列 sequeue t s...
順序佇列的實現
include include typedef int elementtype 定義佇列元素型別 struct queue typedef struct queue protoqueue 佇列型別指標 protoqueue creatqueue int maxsize 建立佇列函式 bool isf...
佇列的順序實現
順序佇列是佇列的順序儲存結構,順序佇列實際上也是是運算受限的順序表。和順序表一樣,順序佇列用乙個結構體來存放當前佇列中的資料。設定兩個指標front和rear 由於佇列的隊頭和隊尾的位置是變化 分別指示隊頭元素和隊尾元素在記憶體中的位置,它們的初值在佇列初始化時均應設定為0 空佇列 規則 只允許在一...