数据结构和算法基础之队列的顺序存储

Posted weiqiangwaideshijie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构和算法基础之队列的顺序存储相关的知识,希望对你有一定的参考价值。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    /// <summary>
    /// 顺序队列
    /// </summary>
    public  class OrderQueue<T>
    {
        public T[] DataArry;
        /// <summary>
        /// 对头
        /// </summary>
        public int Front;
        /// <summary>
        /// 队尾
        /// </summary>
        public int Rear;

        public int Count;

        public int MaxLength
        {
            get
            {
                return DataArry.Length;
            }
        }

        public OrderQueue(int maxLength)
        {
            DataArry = new T[maxLength];
            Front = -1;
            Rear = -1;
        }

        /// <summary>
        /// 入队列
        /// </summary>
        public void Enqueue( T data)
        {
            if(Count>=MaxLength)
            {
                return;
            }
            Count++;
            Rear++;
            DataArry[Rear] = data;
        }

        /// <summary>
        /// 出队列
        /// </summary>
        public T Dequeue()
        {
            if(Count>0)
            {
                Count--;
                Front++;
                T tempData = DataArry[Front];
                return tempData;
            }
            return default(T);
        }
    }
}

 

以上是关于数据结构和算法基础之队列的顺序存储的主要内容,如果未能解决你的问题,请参考以下文章

C/C++|DataStructure栈与队列之栈的顺序存储结构

数据结构回顾之顺序存储结构中的线性表(栈与队列顺序线性表实现)

线表之队列

数据结构与算法合集

黑马程序员 C语言数据结构与算法之线性表(链表/栈/队列/顺序表)

闭关修炼中 *** Java常用算法之 -- 队列结构