假设我使用数组实现循环队列。我如何计算队列的大小?我所说的尺寸是指前部和后部之间的元件数量。我想使用模运算。
我有数组的容量,以及队列前面和后面的位置。我现在不知道该怎么办。
最佳答案
How could I calculate the size of the queue?
我会用
size = (start - end + mod) % mod;
这假设缓冲区永远不会完全达到容量。另一种选择是使用没有修改的开始和结束
size = lastWriteIndex - nextReadIndex;
您可以在查找索引时修改这些值。
关于java - 使用 mod 的循环队列大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39942052/