18、如果用一个循环数组 q[0..m-1]表示队列时,该队列只有一个队列头指针 front,不设队列尾指针 rear,求这个队列中从队列投到队列尾的元素个数(包含队列头、队列尾)(华赛面试题、腾讯笔试题)。
两种情况
1、rear>front,此时n=rear-front+1;
2、如果是rear<front的情况,由于是循环队列,那么就应该是n=rear-front+1+m;
此时rear-front是一个负数。
所以将综合就是:(rear-front+1+m)%m。
18、如果用一个循环数组 q[0..m-1]表示队列时,该队列只有一个队列头指针 front,不设队列尾指针 rear,求这个队列中从队列投到队列尾的元素个数(包含队列头、队列尾)(华赛面试题、腾讯笔试题)。
两种情况
1、rear>front,此时n=rear-front+1;
2、如果是rear<front的情况,由于是循环队列,那么就应该是n=rear-front+1+m;
此时rear-front是一个负数。
所以将综合就是:(rear-front+1+m)%m。