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

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

1、简介

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

        

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

2、构造函数

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

3、属性

        与stack相同,可以参考stack

4、方法

        与stack相同,可以参考stack

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

http://www.lryc.cn/news/588447.html

相关文章:

  • Javaweb使用websocket,请先连上demo好吧!很简单的!
  • Vim库函数
  • 【DOCKER】-4 dockerfile镜像管理
  • 纯C++11实现!零依赖贝叶斯情感分析系统,掌握机器学习系统工程化的秘密!
  • 学习 Flutter (三):玩安卓项目实战 - 上
  • 机器学习、深度学习、神经网络之间的关系
  • redis配置(Xshell连接centos7的基础上)
  • Mysql数据库学习--多表查询
  • Python中使用Re模块TypeError: cannot use a string pattern on a bytes-like object 解决办法
  • Leaflet面试题及答案(81-100)
  • 九、官方人格提示词汇总(中-1)
  • 项目进度图不直观,如何优化展示方式
  • Go泛型完全指南:从基础到实战应用
  • 进程---基础知识+命令+函数(fork+getpid+exit+wait+exec)
  • iOS —— 网易云仿写
  • 短剧看广告APP源码独立部署与二次开发指南(支持二开)
  • 前端vue对接海康摄像头流程
  • Java学习 -------进程、线程、协程
  • 无人机抗风性模块概述!
  • 修改主机名颜色脚本
  • Pytest Fixtures 详解:轻松掌握测试逻辑复用与资源管理
  • 如何删除D盘合并C盘
  • 搭建k8s高可用集群,“Unable to register node with API server“
  • JAVA并发——volatile关键字的作用是什么
  • 【EM算法】算法及注解
  • aspnetcore Mvc配置选项中的ModelBindingMessageProvider
  • 群晖Nas - Docker(ContainerManager)上安装SVN Server和库权限设置问题
  • k8s-高级调度(二)
  • SVN客户端(TortoiseSVN)和SVN-VS2022插件(visualsvn)官网下载
  • Kotlin Map映射转换