佇列三 陣列模擬迴圈佇列

2021-10-05 17:03:07 字數 1012 閱讀 7842

package com.hao.firstdemo.datastruct;

/** * @author haoxiansheng

*/public class testcirclearry

}class circlearray

/*** 判斷佇列是否滿了

** @return

*/public boolean isfull()

/*** 判斷佇列是否為空

** @return

*/public boolean isempty()

/*** 新增資料

** @param n

*/public void addqueue(int n)

//新增資料

arr[rear] = n;

//指標後移 取模

rear = (rear + 1) % maxsize;

}/**

* 獲取佇列資料 出隊

** @return

*/public int popqueue()

/*** 1、先將資料儲存到乙個零時變數中

* 2、front 後移

* 3、將零時變數返回

*/int temp = arr[front];

front = (front + 1) % maxsize;

return temp;

}/**

* 顯示資料

*/public void show()

for (int i = front; i < front + size(); i++)

}/**

* 求出佇列中資料的有效個數

** @return

*/public int size()

/*** 顯示佇列的頭資料

** @return

*/public int headqueue()

return arr[front];

}}

陣列模擬迴圈佇列

前面我們用陣列模擬了佇列,大家有沒有想過乙個問題。不斷的入隊當rear maxsize 1時說明隊滿了沒問題啊,接著我們不斷出隊只留乙個元素在隊中,此時仍然rear maxsize 1,問題就暴露了出現一種假滿情況,目前的佇列是一次性使用顯然不符合現實情況。這裡我們就把它優化一下,迴圈佇列就誕生了,...

使用陣列模擬佇列 迴圈佇列和棧

在一些考試題中以及筆試面試的過程中,在需要使用stack和queue的時候,可能被要求不能使用stl中相關的庫函式,也就意味著我們需要使用純c進行程式設計。但是如果在考試中或者筆試面試中,為了要使用棧和佇列,而去寫乙個完整的資料結構是比較大費周章,況且在時間上也不一定允許,因此,使用陣列來模擬棧和佇...

佇列 陣列實現 迴圈佇列

1 陣列佇列.cpp 定義控制台應用程式的入口點。2 3 include4 include5 include abs 6 include7 include8 using namespace std 9 10 定義乙個佇列的結構體11 struct myqueue12 17 18 規則說明 19 nh...