00:00
好,同学们,我们把刚才飞波纳气的这刚才写的这些东西呢,给大家进行一个简单的小结和整理好,打开我们这个word文档,那刚才我们怎么讲非波拉器的呢?首先我们先给同学们。啊,我们先给同学们介绍了一下斐波纳气。算法的一个一一个概念,其中先给同学们说了一下什么叫黄金分割点。对不对?那么我们觉得黄黄金分割点,它是一个比较神奇的数字,因此在这个基础上,有人设计了这么一个菲波拉契查找算法。那么黄金分割点它的这个。我们借助的是什么呢?我们借助的是一个叫菲波拉契数列来。配合我们这个数组。找找到这个黄金分割点,因为你每次不一样嘛,所以说菲波拉契苏联呢,我们事先要创建好才可以。好,这是我们对菲波拉契的一个基本的说明。
01:03
好,把这个说完了以后,把这个说完了以后,我们就给同学们介绍了一下斐波纳气它的一个工作原理。它的原理呢,其实也挺简单的,它是这样子的,就是说首先大家要明白菲波纳气它的特点有两个,第一点呢,就是它的两个相邻的数越来越接近。黄金分割点第二个呢,它的后一个数就是当K大于二的时候,大于二的时候就是从二,呃,从二开始吧,应该是大于等于二,如果从下标来说,就应该是大于等于二,如果从数列第几个来说,至少要是大于二的那个数就是从第三个数开始,它满足的是K减一。加上啊K减一加上K减二,那么利用这个特性呢,我们可以推出这样一个逻辑,就是FK减一就等于它减一的目的是需要让这个中间的位置找到,就是我用no加上FK减一,就刚好得到这个mid,而这个密呢,刚好是介于这两部分之间,而它这个值呢,刚好又接近黄金分割点。
02:14
就这样来的。好,那这里呢,我们就把它的一系列的原理给它做了一个简单的说明,好,我把这里呢。给同学们板述一下对不对?好,黄金分割点。到这面这个图,我觉得也给同学们拿过来。这个图就是,诶往这上啊,这个图就是我在幻灯片里面画的这个图。这就这个图。好,有了这个图过后呢,我们继续说了一下,如何去理解FK减一这个K代表的就是黄金分割点,哎,而FK减一整个代表是这个黄金分割点对应的那个那个数就是菲波拉对应的对应的那个值,好这样子去理解,好这是我们对它做了三点说明。
03:06
是不是做了三点说明呢?好,我把它呢标成一个粗体。标成一个处理,下边呢,呃,标成这样一个线吧,这样好看一点对吧,一个小箭头,下边我们对这句话呢,做了三句话的。一个说明和理解。对,就这么一个东西。对啊,然后这说完了过呢,我说了怎么去有一个问题说如果N不等于不一定刚好等于FK的时候呢,我们需要对这个K加加,对这个K进行调整,调整的时候呢,我们用代码是这样一个核心代码放到这里来。是吧,这个地方呢,我们用它做调整,当我们把这个说完以后,是不是我们对非波纳器它的一个基本工作原理有了了解,然后呢,我们就用斐波纳器查找算法完成了一个案例。完成了这么一个案例,当然还是要记住哦,斐波纳器查找呢,仍然需要是在一个有序数组中才能进行,如果你是一个无序的,对不起,不要使用非波拉器算法,那你这个是你要使用非波拉器算法,那个就找不到值了。好,这点请大家注意,就是说,也就是说非波拉器呢,仍然是需要在有序数组中才能执行好代码,实现写入进来。
04:19
代码实现OK。我把刚才。这段代码给各位朋友板书到笔记中去,而且我一边讲呢,一边也在做介绍是吧?好,同学们,那关于斐波纳系查找算法,也叫黄金分割查找算法呢,就给大家介绍到这里。
我来说两句