标签:队头 线性表 队列 大话 元素 数组 数据结构 顺序存储
队列是一种先进先出的线性表【FIFO】
队列的抽象数据类型
【与线性表类似,但,插入数据只能在队尾进行,删除数据只能在对头进行】
顺序存储结构
假设n个元素,则顺序存储队列需要建立一个大于n的数组,并把队列的所有元素存储在数组的前n个单元,数组下标为0的一端即是队头
入队列操作,即在队尾加一个元素,不需要移动任何元素,因此时间复杂度为O(1)
但,出列,所有元素都要向前移动:
如果不限制队列的元素必须存储在数组的前n个单元:
为了避免只有一个元素时,队头和队尾重合处理麻烦,引入两个指针:
循环队列
解决假溢出 ——> 后面满了,就从头开始【也就是 头尾相接的循环】
把这种首尾相接的顺序存储结构称为 循环队列
链式存储结构
链队列,就是线性表的单链表,只能 尾进头出
为了操作上的方便,将队头指针指向链队列的头结点,将队尾指针指向终端结点
链队列的结构
入队【在链表尾部插入结点】
出队
循环队列与链队列比较
标签:队头,线性表,队列,大话,元素,数组,数据结构,顺序存储 来源: https://www.cnblogs.com/expedition/p/10716506.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。