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#用数组实现队列

相关推荐
黎雁·泠崖14 分钟前
Java继承:成员变量访问(就近原则+this/super用法)
java·开发语言
别或许27 分钟前
python中的异步调用(直接使用教程)
java·前端·python
CodeAmaz33 分钟前
文件断点续传完整方案
java·文件断点上传
像少年啦飞驰点、33 分钟前
零基础入门 Spring Boot:从‘Hello World’到可部署微服务的完整学习路径
java·spring boot·web开发·编程入门·后端教程
老鼠只爱大米40 分钟前
LeetCode经典算法面试题 #138:随机链表的复制(节点交织法、哈希表法等五种实现方案解析)
算法·leetcode·链表·随机链表复制·节点交织法
m0_7482486540 分钟前
C++正则表达式攻略:从基础到高级应用
java·c++·正则表达式
墨雨晨曦8840 分钟前
leedcode刷题总结
java·开发语言
qq_12498707531 小时前
基于SpringBoot的闪电队篮球俱乐部管理系统的设计与开发(源码+论文+部署+安装)
java·数据库·spring boot·后端·spring·毕业设计·计算机毕业设计
a努力。1 小时前
中国邮政Java面试被问:MySQL的ICP(索引条件下推)优化原理
java·开发语言·数据仓库·面试·职场和发展·重构·maven
Hx_Ma161 小时前
Leecode题知识点(25,61,82)
算法·leetcode·链表