您好,欢迎来到百家汽车网。
搜索
您的当前位置:首页实现一个简单的环形队列

实现一个简单的环形队列

来源:百家汽车网

实现一个简单的环形队列



一、什么是环形队列?

环形队列的定义

环形队列(Circular Queue)是一种特殊的数据结构,旨在高效地管理和利用存储空间。与传统的线性队列相比,环形队列的主要特点在于,它的队尾和队头可以在同一存储空间中循环使用,从而避免了空间浪费。

环形队列的原理

二、环形队列功能实现

1.构造初始化

    // 构造函数,初始化队列大小
    CircularQueue(int size) : maxSize(size + 1), front(0), rear(0)
    {
   
        data.resize(maxSize); // 根据最大大小调整数据存储空间
    }

2.入队操作

    // 入队操作
    bool enqueue(const T &item)
    {
   
        if (isFull()) // 检查队列是否已满
        {
   
            throw std::runtime_error("Queue is full!"); // 抛出异常
            return false;                               // 这个返回语句不会被执行
        }
        data[rear] = item;           // 将新元素放入队尾
        rear = (rear + 1) % maxSize; // 更新队尾指针
        return true;                 // 入队成功
    }

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baijiahaobaidu.com 版权所有 湘ICP备2023023988号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务