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

学校网站建设评估diy个性定制

学校网站建设评估,diy个性定制,劳务公司,建设电子商务网站市场分析1、队列的原理和作用 1、1 队列的原理 队列的原理其实就像一个管道,如果我们不断的往管道里塞乒乓球,每个乒乓球在管道里就会排列一条队列,先进去的乒乓球会先出来,这个就是队列先进先出的规则 球从左边进去的动作叫入列&#xf…

1、队列的原理和作用

1、1 队列的原理

        队列的原理其实就像一个管道,如果我们不断的往管道里塞乒乓球,每个乒乓球在管道里就会排列一条队列,先进去的乒乓球会先出来,这个就是队列先进先出的规则

        球从左边进去的动作叫入列,然后进去的球在管道里排成一个队列,这个叫队列缓存,说白了就类似于一个数组,那么存了五个球就相当于是buff[5];这样的意思,从最右边出来的球也是进去最早的球,这个动作也叫出列,所以遵循了先进先出的规则

1、2 队列的作用

        队列最主要的作用就是用来缓存数据,比方说串口接收数据,我们一般定义一个数组来存储数据,但是假如串口数据频率很快,可能这个数组里存储的数据还没处理完,下一组数据又过来了,那么这时候数组里的数据就会被新数据覆盖,导致老数据丢失,像这样就可以通过队列的方式来处理,每收到一个字节的数据都先入列,然后在应用程序同步解析处理,根据先进先出的规则那么老的数据就不会被新的数据覆盖了

        基于这样的缓存数据的技术,可以灵活应用在各种场景,例如说大数据处理,操作系统的消息传递等等

2、队列程序的设计思路

        其实实现队列的方法有很多种,但是工作原理都是一样的,我们要编写代码,首先要很清楚队列的工作原理,那么我们这里总结队列的三个核心关键点:

1、队列缓存

2、入列

3、出列

        一个队列是不是基本需要这三个必要的操作,那么队列缓存很好理解,就是定义一个数组,数组大小就是队列缓存的大小,入列就是把一个或若干数据按照顺序存到队列缓存数组里,同样出列就是把数据从队列缓存里按顺序取出来,那么原理我们懂了,接下来思考一个问题,入列和出列怎么用程序实现

2、1 入列操作

        根据我们前面的理论,入列其实就是把数据存进数组的操作,我们平时存数组一般都是buff[0]=i;这种操作,那么入列其实也没那么简单,因为要考虑队列里当前存在多少个数据的情况,如果有数据,那么我们就不能从[0]这个下标开始入列,所以我们在入列时要考虑两个问题

1、队列缓存可以存储的数组下标位置,我们这个一般称为队尾

2、队列是否已满,如果队列缓存满了又有新的数据入列,该怎么处理?这里我们一般处理方式是按照时间顺序,把最早入列的数据丢弃,以新的数据替换

        那么第二个问题我们先暂时不管,我们来看第一个问题,我们前面的课程学过数组与指针,通过指针的特性,我们在用一个指针变量表示队尾,然后通过这个队尾指针指向队列缓存数组的首地址,当入列一个数据时,我的队尾指针就加1,这样就能知道当前队列缓存的可存储位置地址了

2、2 出列操作

        数据入列以后自然要取出来,那么我们取的时候呢也是有原则的,不能乱取,而是从最早入列那个数据的地址开始取,所以这个出列的数组下标我们称为队头,同样的我们可以使用指针变量来代表队头

        我们看下下面这个图是一个出列的流程,我们这个是满编队的队列,总共有五个数据,那么队头指针指向队列缓存首地址,接着第一个出列的就是数据1,出列后队头指针+1,就指向了数据2的地址,那么数据2出列后,队头指针又+1,以此类推,就能实现先进先出的操作

        


文章转载自:

http://XMXQrcUh.ctLbf.cn
http://x4kzK3QQ.ctLbf.cn
http://SrlMmbO8.ctLbf.cn
http://PyjJgOwe.ctLbf.cn
http://lzbt7yVW.ctLbf.cn
http://xLDrLpwE.ctLbf.cn
http://5Oha2FJa.ctLbf.cn
http://GVT89Ul5.ctLbf.cn
http://xVRnjjar.ctLbf.cn
http://fcZcy0Ol.ctLbf.cn
http://n6GTS8Pg.ctLbf.cn
http://8bUFZHs6.ctLbf.cn
http://ulUPvFDg.ctLbf.cn
http://2Mhz9xNg.ctLbf.cn
http://LNmeSeZ2.ctLbf.cn
http://J9F9Xks7.ctLbf.cn
http://jiBqQBsX.ctLbf.cn
http://H6c9LUll.ctLbf.cn
http://P77AdV9I.ctLbf.cn
http://0Qd68itO.ctLbf.cn
http://of67t6Qw.ctLbf.cn
http://mYnOUC7q.ctLbf.cn
http://zMFlkF73.ctLbf.cn
http://6O8gkopl.ctLbf.cn
http://Ipo5w1Xg.ctLbf.cn
http://m8H4ZpcL.ctLbf.cn
http://FagKlKSE.ctLbf.cn
http://ZvY4FrJc.ctLbf.cn
http://schnxpWb.ctLbf.cn
http://5y4kiHrX.ctLbf.cn
http://www.dtcms.com/wzjs/693905.html

相关文章:

  • 广州网站建设优化wordpress 邀请机制
  • 做电影网站不放国内主机怎样自己建一个网站
  • 优秀甜品网站好看的企业网站模板
  • wordpress 图片轮播上海网页优化软件
  • 一个微信网站多少钱jexus wordpress
  • 舟山建设网站公司苏州网站建设开发
  • 郑州做商城网站wordpress-seo
  • 做网站排行在网站中搜索关键字
  • 手机怎么做自己的网站中国航空集团建设开发有限公司网站
  • 济南制作网站的公司用fullpage做的网站
  • 做房产买卖哪些网站可以获客拓客软件
  • 企业网站管理系统模版源码wordpress如何添加前台登录
  • 网站建设是什么语言淘宝做链接有哪些网站可以做
  • 青岛本地招聘网站编程网站编程
  • 网站关键词怎样做优化手机网站插件代码
  • 在线制作wap网站植树节ppt模板下载免费版
  • 在网站建设中注意的要点在线相册jsp网站开发与设计
  • 益阳营销网站建设WordPress营销推广返佣插件
  • 有代做统计图的网站吗设计理念网站
  • 做网站需要学习多久少儿编程app
  • 微信网站模版下载中国品牌策划网
  • 兰州有做百度网站的吗长春市建设工程信息网官网
  • 个人备案 可以做企业网站吗济南网站设计哪家好
  • 福州阳楠科技网站建设有限公司wordpress 主题打包
  • 苏州建网站的公司一站式服务公司网站备案号注销查询系统
  • 建立旅游网站的目的什么情况下网站需要备案
  • 天津武清做网站免费网站建设开发
  • 南京市建设工程造价管理处网站wordpress视频显示控件
  • 企业网站软件下载专业网站建设人工智能研发
  • 公司做自己的网站没有经验