-
for?(int?i?=?0;?i?<?m_iQueueLen;?i++) { cout?<<?m_pQueue[(m_iHead?+?i)?%?m_iQueueCapacity]?<<?endl;???//?//這里的i是要與總容量取余 } 或者: for?(int?i?=?m_iHead?;?i?<?m_iQueueLen+m_iHead?;?i++) { cout?<<?m_pQueue[?i?%?m_iQueueCapacity]?<<?endl;???//這里的i是要與總容量取余 }
這里遍歷是有問題的,循環應該這么寫。? ?這里用取余符號%來解決下標超出范圍的問題,很機智
查看全部 -
數據結構指相互之間存在一種或多種[特定關系]的數據元素的[集合]。
查看全部 -
數據結構指相互之間存在一種或多種[特定關系]的數據元素的[集合]。查看全部
-
對復雜的數據類型做環形隊列:
未做筆記,后期補
查看全部 -
之前的遍歷函數有點問題,修改:
查看全部 -
環形隊列三個函數:新元素入隊、首元素出隊、遍歷隊列實現:
新元素入隊:先判斷是否未滿。?
上圖錯誤:
未加m_iQueueLen++;
m_iTail =?m_iTail % m_iQueueCapacity;
出隊:出隊的是隊頭指向的元素。出隊先判斷隊是否為空。
下圖錯誤:
未加m_iQueueLen—;
m_iHead=?m_iHead % m_iQueueCapacity;
遍歷,注意對i取余的原理。
查看全部 -
編寫cpp文件:
隊尾的位置就是插入數據的位置,第一個插入的數據放在queue[0],開始隊首和隊尾都是queue[0],插入一個數據后,隊尾的位置變為queue[1]。
取第一個數從queue[0]開始取,后對頭指向queue[1].
查看全部 -
隊列:先入先出FIFO
普通隊列、環形隊列
隊列的用途:自動排號機
查看全部 -
demo.cpp
查看全部 -
Myqueue中實例化一個custome數組,需要一個默認的構造函數。不需要傳參的。所以就在customer.h中加上默認的兩個參數值
查看全部 -
對于myQueue.cpp只需修改 遍歷函數
查看全部 -
myQueue.h需要做的改動(部分)
查看全部 -
Customer.cpp
查看全部 -
隊列元素是一個對象
查看全部 -
取余的應是對 capacity
查看全部
舉報