环形队列

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了环形队列相关的知识,希望对你有一定的参考价值。

  1. 将数组queue[mMaxSize]视为环,队列头指针front,尾指针rear,为了避免二义性,最多只容纳mMaxSize-1个元素;
  2. front == rear时,队列为空;front == (rear+1) % mMaxSize时,队列为满;
  3. front所指处不放元素;
  4. void queueAdd(const int x) {
        int k = (rear + 1) % mMaxSize;
        if (front == k) 
            QueueFull();
        else {
            queue[k] = x;
            rear = k;
        } 
    }
    int  queueDelete() {
        if (front == rear) {
            QueueEmpty();
            return 0;
        }
        front = (front+1) % mMaxSize;
        return queue[front]; 
    }

     

以上是关于环形队列的主要内容,如果未能解决你的问题,请参考以下文章

java实现环形队列

go语言数据结构 环形队列

柔性数组和环形队列之间的故事

支持任意数据类型的环形队列

支持任意数据类型的环形队列

什么是环形队列,采用什么方法实现环形队列