赞
踩
前言
上一章节针对于C语言栈结构做了解析,不清楚的可以回顾一下。
本章节主要针对于C语言的基础数据结构队列做以解析。
数据结构之队列
队列是一种特殊的 线性表 ,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。
故队列基本操作如下:
(1)创建队列
(2)入队
(3)出队
(4)判断队列是否为NULL
(5)获取队头元素
数据结构之队列分类
根据队列实现方式与出队方式,我们可以把栈分为以下三种描述方式:
(1)原生数组队列
(2)动态申请内存的数组描述(普通队列和循环队列)
(3)链式结构描述
优先队列
原生数组描述队列
数组描述栈,只不过多了先进先出的限制而已,它是静态分配的,即使用前,它的内存就已经以数组的形式分配好了,所以在使用时,需要注意队头队尾的标记。
原生数组描述队列实现试题案例:逆序整数
动态数组描述队列
动态申请内存的数组描述不再采用上述实用性的方法了,而是通过封装相关队列函数去描述这种结构。这是写数据结构的一种大致方法。
1.结构体定义与队列的创建过程:
结构体定义:描述队列的属性:队头标记,队尾标记,队列空间
创建队列其实就是创建结构体变量
具体代码
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。