美文网首页
队列应用

队列应用

作者: xinxinlimin | 来源:发表于2017-11-21 11:53 被阅读0次

队列是一种先进先出的数据结构,我们可以将其假设为一个排队机制,广泛应用于计算机的各个领域,包括操作系统的作业调度,用于缓冲区,网络中的路由缓冲包区。

队列的结构由两个标志组成,不同于栈的一个标志,空时tos=-1。由font与rear组成。

一般的队列我们可以通过调用linkedlist来实现queue的功能,此队列通过链表实现。

这里着重说一下循环队列,数组实现(由于链表过于繁琐)。

定义四个方法:

是否为空:font==rear

是否满:(rear+1)% length==font 。说明:font指向对手元素,rear指向队尾元素的下一个,若队列为满,正常应该font==rear,就会与空时重复。为了避免这一问题,我们定义留一个字符表示队列满。

入队:array【rear】=value。注意:rear要++,同时注意rear要小于10,若大于,则从0开始计数 ,这样才能保证循环。

出队:同于入队,只不过是font的操作。

队列定义部分结束,借这个空闲说说内部类

内部类的好处:

1 成员内部类与静态内部类的区别:

一个在编译时会生成指向外部类的一个引用,这样在调用时需要先生成外部了的对象,之后new内部类。而另一个再生成对象时直接调用即可。

静态内部类不可以使用外部类非静态的变量与方法,但在自己的类中可以定义非静态的属性与方法。

很奇怪吧。

2 匿名内部类:两种定义方式:button.addlistner(new actionListner(){实现接口的抽象方法});

定义线程时:Thread t=new Thread(new Runnable(){run(){}}); 

两种方式异曲同工,都是定义的接口引用的具体实现,格式是new+接口,可能有些困惑。

接着说队列,下面说一下队列的应用:舞伴问题、杨辉三角问题、游标编码问题。

杨辉三角:程序输入行数,打印出相应行的二项式系数:

脱了这么久,今天终于可以把它完成了:

结束

游标编码问题就是一个统计字符串数字个数的问题,相对来说比较简单,只需一个字符串即可,在这里不再赘述。

相关文章

  • Redis应用-布隆过滤器

    系列文章Redis应用-分布式锁Redis应用-异步消息队列与延时队列Redis应用-位图Redis应用-Hype...

  • Redis应用-Geo

    系列文章Redis应用-分布式锁Redis应用-异步消息队列与延时队列Redis应用-位图Redis应用-Hype...

  • 队列和栈的应用

    队列和栈的使用 标签(空格分隔): algorithm 队列和栈的应用 1.队列的应用 队列是一种常见的数据结构,...

  • 队列

    队列特性 对比队列和栈 基于数组的队列 对比队列学习循环队列 循环队列难点 阻塞队列 并发队列 应用:线程池中拒绝...

  • 队列

    1)列队是什么?2)队列的特点?3)队列的基本操作有哪些?4)队列已被应用的经典场景有哪些?应用场景? 一、队列是...

  • 队列应用

    队列是一种先进先出的数据结构,我们可以将其假设为一个排队机制,广泛应用于计算机的各个领域,包括操作系统的作业调度,...

  • iOS-GCD队列组的使用

    队列组的实际应用

  • 浅谈消息队列之RocketMQ

    什么是消息队列? 为什么要用消息队列? 即,应用场景是什么,也就是用了有什么好处 解耦 多应用间通过消息队列对同...

  • 线程安全8 - 可阻塞的队列

    队列包含固定长度的队列和不固定长度的队列 什么是阻塞队列,阻塞队列的作用与实际应用,阻塞队列的实现原理 Array...

  • Flutter上线项目实战——队列任务

    一、应用场景 队列压缩视频 队列解密视频 队列请求网络 等等 二、实现思路 定义一个任务队列taskList [先...

网友评论

      本文标题:队列应用

      本文链接:https://www.haomeiwen.com/subject/qqaamxtx.html