Welcome

首页 / 软件开发 / 数据结构与算法 / 算法速成(九)队列

算法速成(九)队列2014-04-28 csdn 特种兵—AK47可能大家都知道,线性表的变种非常非常多,比如今天讲的“队列”,灰常有意思啊。

一:概念

队列是一个”先进先出“的线性表,牛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