对于循环队列,假设队列中所有元素为数字字符,利用循环队列的基本运算,删除其中所有奇数字符元素。
1个回答
关注
展开全部
循环队列在创建时就要规定有多少块连续的存储单元。在队尾添加元素,在队头删除元素。以front和rear标志队头队尾,初始时front和rear都为0,入队rear加一,出队front加一。且rear的位置指向队尾元素的下一个单元。
咨询记录 · 回答于2022-12-25
对于循环队列,假设队列中所有元素为数字字符,利用循环队列的基本运算,删除其中所有奇数字符元素。
循环队列在创建时就要规定有多少块连续的存储单元。在队尾添加元素,在队头删除元素。以front和rear标志队头队尾,初始时front和rear都为0,入队rear加一,出队front加一。且rear的位置指向队尾元素的下一个单元。
如果向队列添加元素时队列已满,那么就将队首元素出队,新元素添加到原来队末元素所在位置。当rear已经到达队列末尾时应该让rear回到0。
在循环队列里的front、rear的移动都要靠(front/rear+1)%MAXSIZE,而不能简单的加减,原因是数组有界,下标不会自动循环。