
查找
kekeoneone
offeroffer
展开
-
斐波那契(黄金分割)查找
斐波那契数列:1,1,2,3,5,8,13…可以发现相邻的两个数无限接近黄金分割点。中间值:mid=low+F(k-1)+1F代表斐波那契数列理解:1.斐波那契数列:F(k)=F(k-1)+F(k-2)的性质。可以得到F(k)-1=(F(k-1)-1)+(F(k-2)-1)+1;所以只要顺序表的长度为F(k)-1,就可以分为长度为F(k-1)和F(k-2)两部分。从而中间位置为 m...原创 2020-03-22 15:08:35 · 228 阅读 · 0 评论 -
插值查找
实际上是对二分查找的改进,所以前提也是排好序的。但是二分查找,每次都是从中间开始找,如果找的是最左边或是最右边,二分就浪费了时间。那么,插值改进的方法:自定义中间值 public static int insertSearch(int []arr,int left,int right,int value){ System.out.println(" 查找次数: "...原创 2020-03-22 14:10:08 · 116 阅读 · 0 评论 -
二分查找
1.线性查找:即for循环逐个查找2.二分查找:使用前提:在有序数组中查找 public static int binarySearch(int []arr,int left,int right,int value){ if(left>right){ return -1; } int mid=(left+...原创 2020-03-21 20:47:51 · 132 阅读 · 1 评论