資料結構——迴圈佇列——2016_12_28
迴圈佇列源**(c語言版)
/*******簡單實現了插入,刪除,長度,退出等功能********/
#include
#include
#define maxsize 100
//定義佇列結構
typedef struct queuesqueue;
//初始化100個數字的佇列
void initqueue(squeue * q)
//返回佇列長度
void queuelength(squeue * q)
//插入節點
void insertqueue(squeue * q,int e)
}//刪除節點
deletequeue(squeue * q)
}//列印佇列
void printqueue(squeue q)
printf("\n————————————————————————————\n");
}//主函式
int main()
printf("十二個數字的佇列已經建立完成!\n");
printqueue(m);
printf("請輸入序號進行操作:1.插入 2.刪除 3.長度 4.退出\n");
scanf("%d",&x);
while(x!=0)
printf("請輸入序號進行操作:1.插入 2.刪除 3.長度 4.退出\n");
scanf("%d",&x);
}return 0;
}
程式截圖:
資料結構——迴圈佇列——2016_12_28
資料結構 佇列 迴圈佇列
在佇列的陣列實現中,我們很容易發現數在出隊後,陣列的前面部分會有剩餘空間沒有被使用,所以我們為了最大程度的利用固定長度的陣列,我們採用迴圈佇列的儲存方式,這種方式的最大問題在於resize的時候比較麻煩,所以我們不考慮resize的情況。基本結構如下,這裡front指向第乙個元素的位置,rear指向...
資料結構 佇列 迴圈佇列
資料結構 佇列 迴圈佇列 順序儲存 犧牲乙個空間單元來判段佇列滿狀態。q.front q.rear 1 initsize date 2017 4 16 include define elemtype char define initsize 100 typedef structsqqueue voi...
資料結構 迴圈佇列
所謂順序儲存結構就是用一組位址連續的儲存單元依次存放從隊頭到隊尾的元素。宣告兩個指標rear front分別用來指示隊尾元素的下一位置和隊頭元素的位置。初始化時rear front 0 插入新的元素時尾指標加1,元素出佇列時隊頭指標加1。不過這樣做有個問題,不論是入隊還是出隊,隊頭或隊尾指標都是加1...