C#用链表和数组实现队列

1.链表

csharp 复制代码
public class 基础 : MonoBehaviour
{
    public class MyQueue
    {
        public class QueueData
        {
            public QueueData next;
            public object data;
            public QueueData(QueueData last, object data)
            {
                last.next = this;
                this.data = data;
            }
            public QueueData(object data)
            {
                this.data = data;
            }
        }
        //top永远是不变的 代表第一个元素
        QueueData topData;
        //pre是变的 每次新进来的元素都更新它
        QueueData preData;
        public void Enqueue(object data)
        {
            if(topData == null)
            {
                topData =  new QueueData(data);
                preData = topData;
            }
            else
            {
                //不是第一个元素 那就需要表明他的上一个元素是谁
                preData = new QueueData(preData, data);
            }
        }
        public object Dequeue()
        {
            object result = topData.data;
            topData = topData.next;
            return result;
        }
        
    }
    private void Start()
    {
        MyQueue mq = new MyQueue();
        mq.Enqueue(1);
        mq.Enqueue(44);
        mq.Enqueue(88);
        Debug.Log(mq.Dequeue());
        Debug.Log(mq.Dequeue());
    }
}

2.数组
C#用数组实现队列

相关推荐
秋天的怀念_David9 小时前
第二十一夜 · 数字黑洞与西西弗斯的惩罚
java·程序人生·算法
外收内放9 小时前
Python基础语法练习题(73)
java·前端·python
Wang's Blog9 小时前
Java 项目实战: 交友项目 - 环信后台发送消息测试
java·交友
用户3721574261359 小时前
Java 操作 Word 脚注和尾注:添加、读取与删除
java
小嘉丶学长10 小时前
Day14 · 字典与集合
java·开发语言·网络·python·学习·1024程序员节
字节探索10 小时前
Spring Boot 接口幂等性设计:从唯一索引到 Redis+Lua 的工程实践
java·spring boot
用户37215742613510 小时前
Java 实现 Excel 与 Markdown 相互转换:表格导出、格式设置与多表提取
java
SL_staff10 小时前
制造业订单交付总踩坑?用结构化节点协同模型重构计划系统
java·开源·全栈
永遠_11 小时前
YAML格式化工具
java
曼岛_11 小时前
[图解密码学]第4章 古典密码
java·数据库·密码学