当前位置: 首页 > news >正文

数据结构——队列的顺序存储结构

队列的顺序存储是用一段连续的内存空间(如数组)来存放队列元素,并通过**队头指针front队尾指针rear**标记队列的头尾位置。这种基于数组的实现称为“顺序队列”,但直接使用数组会面临“假溢出”问题,因此通常需优化为“循环队列”。

1. 顺序队列的基本结构与操作

顺序队列以数组data存储元素,front通常指向队头元素的前一个位置rear指向队尾元素的位置。初始时,队空状态下frontrear重合(如图3.6(a),两者都指向数组起始位置,队列无元素)。

  • 入队:新元素放入rear指向的位置,随后rear向后移动一位;
  • 出队front向后移动一位,跳过队头元素。

如图3.6(b),5个元素a、b、c、d、e依次入队后,rear指向数组第5个位置(元素e的位置),front指向数组起始位置(元素a的前一位);图3.6©是出队1次后的状态,front后移一位,跳过原队头元素a;图3.6(d)是出队3次后的状态,front已接近rear

用代码定义顺序队列结构(以C语言为例):

#define MaxSize 100  // 队列最大容量
typedef struct {ElemType data[MaxSize];  // 存储队列元素的数组int front, rear
http://www.dtcms.com/a/499453.html

相关文章:

  • Android Bootloader启动逻辑深度解析
  • 【机械臂运动学基础】变换矩阵
  • 购物网站开发意义大气广告设计网站源码 企业公司模板 dedecms5.7 企业网站
  • 包资源管理器NPM 使用
  • 在PHP框架里如何进行数据库连接?
  • 网站建设后压缩代码邢台又一地被划定高风险区域
  • 《彻底理解C语言指针全攻略(6)-- qsort、sizeof和strlen》
  • 网站开发的工资是多少wordpress 获取文章图片标题
  • C++ - List
  • 阿里服务器怎么做网站服务器上海网站制作公司介绍
  • MAC mini /绿联NAS 上安装本地AFFiNE
  • h5游戏免费下载:怪物联盟
  • 酒店网站建设方案网站验证码出不来
  • 【JAVA】Java8的 Stream相关学习分析总结
  • 虚幻引擎5 GAS开发俯视角RPG游戏 P06-06 次要属性
  • 基于Vue的保护动物信息管理系统r7zl6b88 (程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • 深圳AI搜索优化怎么样
  • 工商网站查询企业信息官网购物平台最新排名
  • 【JUC】核心知识点归纳
  • 网站上海备案大渡口发布
  • 虚幻引擎入门教程:虚幻编辑器的基本操作
  • 建行网站首页登录网上银行百度服务中心官网
  • chrome 浏览器更新
  • 单元测试、系统测试、集成测试知识总结
  • 【C++/Lua联合开发】 (三) C++调用Lua
  • 网站开发与黑客做网站维护需要懂什么
  • C++动态规划——LIS(最长不下降子序列)
  • 计算 CIDR 块包含 C 类地址数量的方法
  • [创业之路-702]:“第三次”与“第四次工业革命”的范式跃迁
  • php 简单购物网站diy定制网站