查找循环队列中的元素数 [英] Find number of elements in a Circular Queue
本文介绍了查找循环队列中的元素数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何找到循环队列中的项目数?|前-后|并不总是有效.
How do I find the number of items in a circular queue? |front - rear| doesn't always work.
是否有一个公式可以使用数组的前、后和大小来知道循环队列中有多少元素?
Is there one formula to know how many elements are there in a circular queue using front, rear and size of the array?
推荐答案
其实大小应该是,
size = front > rear ? (MAX - front + rear + 1) : (rear - front + 1);
或者可以使用通用公式:
or one can go for a generic formula:
size = abs(abs(MAX - front) - abs(MAX -rear));//this works in every situation
这篇关于查找循环队列中的元素数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文