可能大家都知道,线性表的变种非常非常多,比如今天讲的“队列”,灰常有意思啊。
一:概念
队列是一个”先进先出“的线性表,牛X的名字就是“First in First Out(FIFO)”,
生活中有很多这样的场景,比如读书的时候去食堂打饭时的”排队“。当然我们拒绝插队。
二:存储结构
前几天也说过,线性表有两种”存储结构“,① 顺序存储,②链式存储。当然“队列”也脱离
不了这两种服务,这里我就分享一下“顺序存储”。
顺序存储时,我们会维护一个叫做”head头指针“和”tail尾指针“,分别指向队列的开头和结尾。
代码段如下:
#region 队列的数据结构 /// <summary> /// 队列的数据结构 /// </summary> /// <typeparam name="T"></typeparam> public class SeqQueue<T> { private const int maxSize = 100; public int MaxSize { get { return maxSize; } } /// <summary> /// 顺序队列的存储长度 /// </summary> public T[] data = new T[maxSize]; //头指针 public int head; //尾指针 public int tail; } #endregion
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索指针
, 存储
, 队列
, 数据结构 线性表 算法
, maxsize
, public
, 顺序队列
, 顺序
, 几天洗一次头
线性
算法速成、数据结构与算法速成、多级反馈队列调度算法、算法提高 队列操作、多级队列调度算法,以便于您获取更多的相关知识。