循环队列的元素个数计算公式
程序员文章站
2024-03-18 11:47:52
...
因为循环对列,rear不一定比front大
如果rear<front结果是rear-front+maxsize
如果rear>front结果是rear-front
为了用一个表达式同时表达两者,用(rear-front+maxsize)%maxsize
假设maxsize=10
rear=1 front=9,那么结果是2
rear=9 front=1,那么结果是8
reference:
上一篇: 手写单向链表(Java实现)
下一篇: C语言数组的插入删除-easyx
推荐阅读
-
循环队列的元素个数计算公式
-
基本数据结构的实现-顺序栈、循环队列、链栈
-
Java 实现真正的优先级队列(相同优先级的元素先进先出)
-
怎么在一次循环内找出一个数组最小的2个数
-
用c语言的for循环实现1-100奇数和、奇数个数、奇数平均值、偶数和、奇数偶数和。。。
-
每天一道LeetCode-----摩尔投票法寻找给定数组中出现个数大于n/2或n/3的元素
-
腾讯面试题,如何寻找一个数组里面唯一不重复的元素?要求时间复杂度o(n)和空间复杂度o(1)
-
n个整数的无序数组,找到每个元素后面比它大的第一个数,要求时间复杂度为O(N)
-
n个整数的无序数组,找到每个元素后面比它大的第一个数
-
单调栈:n个整数的无序数组,要求找到每个元素后面比它大的第一个数,用vector返回,要求时间复杂度为O(N)