了解集合本质必须要知晓的概念03-队列

队列和堆栈都是约束版的链表,就像在超市购物,队列是先进先出的数据结构。

 

接着上一篇,派生于链表类List,来模拟一个队列。

namespace LinkedListLibrary
{
    public class QueueInheritance : List
    {
        public QueueInheritance() : base("queue"){}
        //入队:到最后面
        public void Enqueue(object dataValue)
        {
            InsertAtBack(dataValue);
        }
        //出队:在最前面删除
        public object Dequeue()
        {
            return RemoveFromFront();
        }
    }
}

 

客户端调用。

        public static void Main(string[] args)
        {
            QueueInheritance queue = new QueueInheritance();
            bool aBoolean = true;
            char aChar = 'a';
            int anInt = 1;
            string aStr = "hello";
            queue.Enqueue(aBoolean);
            queue.Display();
            queue.Enqueue(aChar);
            queue.Display();
            queue.Enqueue(anInt);
            queue.Display();
            queue.Enqueue(aStr);
            queue.Display();
            object removedObject = null;
            try
            {
                while (true)
                {
                    removedObject = queue.Dequeue();
                    Console.WriteLine(removedObject + "出队列~~");
                    queue.Display();
                }
            }
            catch (EmptyListException emptyListException)
            {
                Console.Error.WriteLine(emptyListException.StackTrace);
            }
            Console.ReadKey();
        }

4

 

参考资料:
Visual C# 2008大学教程--(第三版)       

 

“了解集合本质必须要知晓的概念”系列包括:

了解集合本质必须要知晓的概念01-链表

了解集合本质必须要知晓的概念02-堆栈

了解集合本质必须要知晓的概念03-队列

了解集合本质必须要知晓的概念04-二叉查找树

posted @   Darren Ji  阅读(635)  评论(0编辑  收藏  举报
编辑推荐:
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
阅读排行:
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!
· 用 C# 插值字符串处理器写一个 sscanf

我的公众号:新语新世界,欢迎关注。

点击右上角即可分享
微信分享提示