![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
查找算法
无意呢
进击的程序猿
展开
-
【查找算法(一)】二分查找(折半查找)及其应用
二分查找二分查找是一种比较高效的查找算法,它利用分治的算法思想将较大的问题规模缩小为较小规模的问题,从而大大减少了查找次数,因此二分查找应用十分广泛。适用条件顺序结构有序算法描述找到中间值与查找目标值比较中间值大于目标值,则high = mid + 1,继续在比较中间值小的序列中查找;中间值小于目标值,则low = mid - 1,继续在比较中间值大的序列中查找;...原创 2019-02-11 20:50:51 · 624 阅读 · 0 评论 -
【查找算法(二)】插值查找的Java实现
插值查找在介绍插值查找之前,首先考虑一个新问题,为什么二分查找算法一定要是折半,而不是折四分之一或者折更多呢? 打个比方,在英文字典里面查“apple”,你下意识翻开字典是翻前面的书页还是后面的书页呢?如果再让你查“zoo”,你又怎么查?很显然,这里你绝对不会是从中间开始查起,而是有一定目的的往前或往后翻。 同样的,比如要在取值范围1 ~ 10000 之间 100 个元素从小到大均匀分...原创 2019-02-12 17:54:23 · 711 阅读 · 1 评论 -
【查找算法(三)】斐波那契查找
算法简介斐波那契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、····,在数学上,斐波那契被递归方法如下定义:F(1)=1,F(2)=1,F(n)=f(n-1)+F(n-2) (n>=2)。该数列越往后相邻的两个数的比值越趋向于黄金比例值(0.618)。算法描述斐波那契查找就是在二分查找的基础上根据斐波那契数列进行分割的。在斐波那契数列找一个等于...原创 2019-02-13 16:53:22 · 740 阅读 · 0 评论 -
【查找算法(四)】树表查找
一、二叉查找树二、AVL树原创 2019-02-13 17:22:53 · 339 阅读 · 0 评论 -
【查找算法(五)】分块查找
算法简介 要求是顺序表,分块查找又称索引顺序查找,它是顺序查找的一种改进方法。 算法思想将n个数据元素"按块有序"划分为m块(m ≤ n)。每一块中的结点不必有序,但块与块之间必须"按块有序";即第1块中任一元素的关键字都必须小于第2块中任一元素的关键字;而第2块中任一元素又都必须小于第3块中的任一元素,……算法流程1、先选取各块中的最大关键字构成一个索引表;2、查找分两...原创 2019-02-13 21:35:23 · 9652 阅读 · 0 评论