顺序队的“假溢出”是怎样产生的?如何知道循环队列是空还是满?
正确答案:
一般的一维数组队列的尾指针已经到了数组的上界,不能再有入队操作,但其实数组中还有空位置,这就叫“假溢出”。
采用循环队列是解决假溢出的途径。
另外,解决队满队空的办法有三:
①设置一个布尔变量以区别队满还是队空;
②浪费一个元素的空间,用于区别队满还是队空。
③使用一个计数器记录队列中元素个数(即队列长度)。
我们常采用法②,即队头指针、队尾指针中有一个指向实元素,而另一个指向空闲元素。
判断循环队列队空标志是:f=rear队满标志是:f=(r+1)%N
采用循环队列是解决假溢出的途径。
另外,解决队满队空的办法有三:
①设置一个布尔变量以区别队满还是队空;
②浪费一个元素的空间,用于区别队满还是队空。
③使用一个计数器记录队列中元素个数(即队列长度)。
我们常采用法②,即队头指针、队尾指针中有一个指向实元素,而另一个指向空闲元素。
判断循环队列队空标志是:f=rear队满标志是:f=(r+1)%N
答案解析:有
微信扫一扫手机做题