7.2.3分块查找

编程入门 行业动态 更新时间:2024-10-17 07:32:37

7.2.3分块查找

7.2.3分块查找

 

 

果然女孩子动武不是很可爱呐但是超帅=͟͟͞͞( 'ヮ' 三 'ヮ' =͟͟͞͞) 哈哈哈加油加油加油!

大家好,我们来协助我们学习第2种查找方式,请问同学们查找,那我们先来回忆一下上节课学习的顺序,排除对于这样一个有序排列关键字有序排列的线性表,我们进行顺序查找的话,你就要从第1个元素开始第4个比较它们的关键字,直到找到这样一个关键字为u的元素的位置,也就是小兰的位置,那么这就是顺序查找的方式,同学们可能会发现小兰的位置是不是靠后啊,如果我们不是从第1个位置不小的位置开始往后进行查找,而是从后往前或者是说我们可以先找后半部分的人数,是不是这样的效率会比我们从头开始这样的方式要更高一些啊,所以根据这样特点,如果我们找一些编号较大的,编号靠后的,这样一些小朋友的位置,我们就可以先考后先考后半高。那可以先考虑查找后半部分小朋友,后半部分爆炎树,这样效率会更高,所以说这就是照的设计原题,我们根据了这样有序排列后,元素变化特点设计出了车牌查找,接下来我们就来看一下这来查找在书中野格,第一它又称为二分查找,那么它的名字我们就可以简单猜享价值,观察上就是把整个现金表分别分成了两个部分钱一部分是较小的部分,后半部分是元素较大的部分,那么如果我们查找元素的编号较大的话,则要先考虑查找后半部分,如果较小的话,我们随后可以先查找前的部分,这就是他的大事思想,然后后面这句话比较重要,仅适用于有序的数据表,大家一定要注意折半查找的适用条件,这里不仅要求是有序,而且一定要是我们。可以不仅仅要求是有序,而且一定要是顺序表,也就是说在代码实现当中,我们要把所有的元素存放在数组当中,为什么呢?我们才根据后面的消息大家就知道了,这就是需要注意的两点有序加上顺序表好,接下来我们就来看一下它的算法思想,那么它的算法思想就和我们之前所描述的差不多,我们来看一下它是如何严格描述的,首先将给定直k也就是关键词,所以查找关键字与表中中间位置元素的关键是比较,若相等则返回该元素的位置,那么同学们根据这一步是不是就知道为什么要在顺序表格当中进行准备查找了,因为如果它是电是存储的,我们想要找到中线元素,为什么?是不是要变更成条件表,而对于顺序表存放在数组当中的元素来讲中间位数的下标了这是第一步。必须表存放在数字当中的元素来讲,我们只要除以2,是不是就可以找到中间位置的元素的下标了,好这是第1步,如果相等则返回干什么位置,我们表明找到了开元素,若不等呢,则在前半部分或者后半部分进行查找,然后就递归的执行,该过程在前的部分执行诊断查找,或者是后半部分进行准备材料,那么假设查找苏叶石生序时,当然它也可以是这样叙这个我们先来看声序时,若k小于中心元素所查找前半部分的元素,若k大于中间元素,则查找后本部分的元素查找方式,也就是值班查找,这就是值班查找的算法思想重复,该过程只到找到查找的元素为止,或者找不到该元素表明产生失败下他的视线这就是它实现。到了元素为止,或者找不到该元素表明查找失败,那么值班查找的小思想非常好理解好,那么接下来我们来看一下它的代码实现,这就是它实现它实现折半查找的代码,首先我们来看一下反射类型是一个整形它这边我是返回我们查找到的这个关键词的下标,然后如果没有查找成功的话,我们要返回一个负一表示查找失败参数表,有两个参数也就是查找的这个顺序表,l以及查找的这个关键字k,然后在函数体内部我们首先定义了三个辅助变量,也就是漏汉和密的这三个辅助变量标识了我们当前这种部分点色位置,最后一个元素的位置以及中间元素的位置,我们把它初始化为这个顺序表的第1个元素下标,以及最后一个元素的下标,然后就是执行折半差的过程,我们用一个循环语句循环的执行成过程,循环条件是low小于等登录这个。过程我们用一个循环语句循环的执行成过程,循环条件是low小于等于I当low这个标记小于等于开始,我们就继续实行循环体当中扯淡查找内容,这里大家一定要注意一下我们写的是小于等于号,为什么不可以写小于号呢,之后就会看到了,之后呢,为此我就会告诉大家为什么会有一些小于号,如果是小于号的话,之后循环简单的内容就要做出改变,在这样我们实现的过程当中就一定要写小于等于号,那么介绍徐慧颖当中内容,第1条语句是我们初始化了缜密的将秘的复制为现在的第1个标记的位置和最后一个标记的位置,取平均值也就是注意2,大家注意一下,在思源当中有一个特点就是对于整型变量二之后可能会出现小姝贤武如果是该部分的话我们之后一定会出现中间部分。点5,那么如果是该部分的值是偶数个的话,我们除以2之后一定会出现点5,因为中间不分有两个值,当出现点5的时候我们再付给一个整数幂的则会去下界,也就是我们会取整数的部分,就相当于一个取下限的过程,大家要注意一下,然后就是条件判断语句,一个if的条件判断,它的条件就是判断当前的这个me的指向了这个元素这个关键字是否与我们想要查找红颜色相等,如果相等的话直接返回该关键字的位置,也就是当前密度的值表示产生成功,然后如果该幂的取消的关键词的值要大于我们所要查找的这个关键字的话,就是下面这个flcf的条件判断的过程,如果大于的话,分表示我们要查找前半部分的内容,后半部分所有的公式是关键是要找了。都要比我们所要查找的关键字的值要大,所以不用再查找了,直接查找前半部分的值就可以了,然后我们用k复制为幂的简易,然后否则的话也就是我们要查找后半部分的值的话,则要修改low这个标记,叫漏复制为幂的嘉羿航车,就是我们修改查找部分的过程,然后只要循环这个过程就可以找到我们最终所要查找的那一个关键字了,或者是查找失败好,接下来我们来看一个小例子,帮助大家理解两种过程,首先来看一个查找成功的例子,这就是我们列出了一个具有11个数字的一个顺序表,然后我们要查找石榴这个数字,大家注意一下这些数字存放在一个数字当中,那么7对应的数下标就是0,最后一个元素对应的数下标就是10首先我们初始化了并且然后          

产生错误了,所以说大家要注意一下,这个外部循环漏一定是小于等于high的好,这就是一个查找失败的例子,那接下来我们来看一下折半查找的判定数是如何画的,那么这就是这个例子的诊断查找的判定数,那么中间者根基点是不是就是我们所要查找的这个顺序表中间的那一个元素,因为我们是从中间的这个元素29开始进行比较的,然后如果我们所要插入元素比29要小的话,则要查找前的部分,那么前半部分依旧组成了前半部分的二叉排序数,那么依旧它的分节点是前半部分的中间的这个元素,因为如果我们要找前的部分的话,也是从中间这个元素开始比较的,依旧以此类推,右半部分也是一样的,这样我们就画出了整个折半查找的判定数,那么折半差的判定书也是描述了查找的过程都是从中间的元素进行比较。数那么折半差,百分数也是描述了它的过程,都是从中间的元素进行比较,然后找前面部分或者后面部分,然后依次的递归直线a或长或短,那么这个判决书你就有成功的节点,也有失败的节点示范性点也表示了一个不不存在在该先行表当中的一个元素的一个区间,那么画出了这个判定数,大家就一定更能理解为什么这么查找,它的效率要更高了,我们发现只有半查找他这个二叉树是不是更趋向于一棵平衡二叉树,我们发现原先的顺序查找他的话,竟数是否曾数会比较高啊?然而常常比较45,是不是与它的层数直接相关所以对于处的偏低一点所以说岔了小微高一点求一下。那么我们用该判决书,我们来求一下查找消费者,首先我们来看查找,依旧是这样一个计算公式pa×cn,然后求它们的和那么PM,1就表示了以a的元素,它查找的带有率,我们依旧默认了所有元素查找单位相等都是n/1,那么元素那么依旧,三表示的是第2次数,然后我们用这样击球合的方式就可以计算它的平均查找长度,我们需要对应的是进行代入得到了这样一个求这个过程,这样一个求学过程大家可以理解一下,但是我们最终利用这个结果去计算对应的值,其实这样的时候是非常少的,没有任何时候理解它产生的效率。我们靠着老师的意见,他查找他效率,我们来看一下他的计算过程,首先还是把对应片的值代入为n/1,然后ca表示的则是对应这个节点所在的层数,因为我们比较的次数是不是就是它对应的,怎么说b我们来看,如果查找29是不是就是比较一次了,也就是它在第1层,如果查找16,我们先比较29,然后找前半部分比较它的中间值13 10个月俾食在药大,所以要找他的后半部分,一次我们要比较一次,那么找到这个16是不是就是比较三次了,那么10月刚好在第3层,所以比较次数,就是对于引导层数用了之前讲述顺序查找时,他的规律是一样的,然后我们来看将对应的水进行带入,但是这个带入我们是有前提条件的,这个n就是代表着n/1的意思,分子是什么意思呢?我们来看第二的一次方也。这什么意思呢?我们来看第1层是不是有一个元素,有时候跟c点第2层有多少个元素呢,2的一次方也就是1×2,那么有两个斜点,依旧第3层有2的平方,直到点是藏有2呢,等于10-1次方,这个我们之前学习过,大家发现是不是我们按照的是判定数为马拉扇数的情况进行计算的,所以说我们有一个前提约束条件,也就是这个推导过程要加上一个若该判定数是满2差数10才可以这样计算,所以说啊,我们其实不会利用它的结果,而只是看一下它的数量级,我们来看一下,如果把它化简之后得到了这样一个结果,它约为log2点n+1-1,我们发现log2点n+1减1,是不是就是log2点n的这样一个数量级啊,所以说我们可以得出这样的结论,折半插手的时间复杂度为大o论文2dn其实。唉,一棵二叉树一棵接近于平衡二叉树的二棵树当中进行了查找了,那么接下来我们来看查找失败时的平均长度,依旧运用了这样一个公式,那么qj已经表示的是一个失败节点,它的产卵概率那么lg减1,也就是我们之前讲述瞬时查找那样一个规律失败节点的层数,简易代表着查找失败时的比较次数,然后这就是查找失败视频查找长度的公式,我们依旧不会对它进行具体的计算得出结果,我们怎样那么在反应当中经常出现什么样的题目呢?我们经常出现,给出一个具体的例子,然后让你计算它的平均查找长度,那么接下来我们就来以这个例子为例来看一下,如果以这个例子怎样计算它的平均长度长度呢?首先来看看sl成功时的长度,那么就是1×1第1层有一个节点九点。那么就是1×1,第1层有一个结点2×2,第2层有两个结点3×4,第3上有4个结点4×4,第4层也有4个节点,10 19 33 43这4个节点所以求和然后再除以节点数量就可以得出成功时的平均差,长度为3,然后我们再来计算一下失败是什么,失败是因为我们没有给出具体的我们直销哪一些失败的例子,所以我们就是以失败节点为单位计算计算的,这里呢就有12个失败节点,那么在第4场由4个单位进行,一个是做c让他得到一个,然后在第5层有8个世外仙,就是8×5-1就是54×1最后。然后插上他的条件,那么差账适用于世。好督导例子,最后再来带大家总结一下顺序查找和承办查找它的条件,那么顺序查找适用于顺序存储或者是变式存储都可以,然后序列有序,无序其实也可以那么折半查找,只适用于顺序存储,并且要求序列一定是有序的,这是值班查找的前提条件好,这就是本节课的全部内容。

 

 

 

更多推荐

7.2.3分块查找

本文发布于:2024-02-05 09:29:31,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1674122.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!