为什么数据结构里循环队列求元素个数要用(front-rear+n)%n?(n是最大队列长度),为什

为什么数据结构里循环队列求元素个数要用(front-rear+n)%n?(n是最大队列长度),为什么不用front-rear的绝对值?

你还在纠结啊,你的公式打反了,举个例吧
一个总长为10的循坏队列,在某一时刻其 头front=4,尾rear=7有4/5/6三个元素
这时往里面加五个元素,没有出列,就会变成 front=4,rear=2有4/5/6/7/8/9/0/1八个元素
那么取绝对值长度就不对了,(2-4+10)%10=8,才是对的
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-01-30
怎么可能存在front=4,rear=2这种情况
相似回答