当前位置: 首页 > news >正文

c#进阶之数据结构(动态数组篇)----Queue

1、简介

        这个是c#封装的队列类型,同栈相反,这个是先进先出,一般用于事件注册,或者数据的按顺序处理,理解为需要排队处理的可以用队列来处理。注意,队列一定是有顺序的,先进确实是会先出,但是哈希结构就不一定是按照插入的顺序来进行的排序了,数组类型可以和下标挂钩。

        

        由于需要头尾分开操作,因此他是一个循环数组。注意他的扩容并不相同,他的底层进行扩容是通过增长因子直接乘以容量得到,因此他会有一个容量裁剪的方法(参考ArrayList的裁剪方法)。

2、构造函数

        这里只额外介绍一个最后一个构造函数,它可以指定队列容量的同时可以指定增长因子

3、属性

        与stack相同,可以参考stack

4、方法

        与stack相同,可以参考stack

备注:其实与Stack不同的是底层实现的数据结构不同,这个使用的是一个循环数组,也就是说他的扩容是根据增长因子,而不是简单的尾数据的index和size对比,如果count能够容纳这么的队列,那么只会存在指针循环

http://www.dtcms.com/a/278388.html

相关文章:

  • 基于R语言的极值统计学及其在相关领域中的实践技术应用
  • Android ---【CPU优化】需要优化的原因及优化的地方
  • [Nagios Core] 通知系统 | 事件代理 | NEB模块,事件,回调
  • 如何将 iPhone 备份到云端:完整指南
  • Kafka事务消息与Exactly-Once语义实战指南
  • LeetCode 424.替换后的最长重复字符
  • 群晖Nas - Docker(ContainerManager)上安装SVN Server和库权限设置问题
  • 力扣 hot100 Day44
  • 【第六节】docker可视化工具portainer安装
  • 【小白量化智能体】应用5:编写通达信股票交易指标及生成QMT自动交易Python策略程序
  • VR全景制作流程?什么是全景?
  • 从欧洲杯初现到世俱杯之巅:海信冰箱的“保鲜传奇”
  • 从零构建搜索引擎 build demo search engine from scratch
  • Javaweb使用websocket,请先连上demo好吧!很简单的!
  • Android系统的问题分析笔记 - Android上的调试方式 bugreport
  • Android展示加载PDF
  • 图机器学习(1)——图论基础
  • android tabLayout 切换fragment fragment生命周期
  • 50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | GithubProfies(GitHub 个人资料)
  • 如何改变音乐的音质kbps和采样率hz
  • HTML面试题
  • [spring6: Resource ResourceLoader]-加载资源
  • (三)OpenCV——图像形态学
  • 【算法深练】BFS:“由近及远”的遍历艺术,广度优先算法题型全解析
  • ubuntu透网方案
  • 多客户端-服务器(select,poll)
  • 使用 keytool 在服务器上导入证书操作指南(SSL 证书验证错误处理)
  • Linux的相关学习
  • 20250714-day15
  • imx6ull-系统移植篇4——U-Boot 工程目录分析