二分搜索的递归实现算法
2017-04-22 21:51
267 查看
输入:先输入进行二分搜索元素的个数,然后按大小依次输入(或随机生成,然后排序)每个数字,最后输入要求搜索的元素。
输出:要求搜索元素的下标(下标从0开始!)。
完整代码:
运行结果:
是时候顶一下了:
这里只能查找一次,多次查找请移步我的站点
输出:要求搜索元素的下标(下标从0开始!)。
完整代码:
import java.util.Scanner; //二分搜索递归 public class Test08 { public static void main(String[] args) { try { Scanner scan=new Scanner(System.in); System.out.println("请输入元素的个数:"); int n=scan.nextInt(); System.out.println("按顺序输入元素:"); int list[]=new int ; for (int i = 0; i <=list.length-1; i++) { String x = scan.next(); int m=Integer.parseInt(x); list[i] = m; } System.out.println("输入要查找的元素:"); int key=scan.nextInt(); System.out.println(key+"的数组下标:"+binarySearch(list, 0, list.length-1, key)); } catch (Exception e) { e.printStackTrace(); } } public static int binarySearch(int[] value,int begin,int end, int key) { while (begin <= end) { int mid = (begin + end) / 2; if (value[mid] == key) { return mid; } if (value[mid] > key) { return Test08.binarySearch(value,begin,mid-1, key); } else { return Test08.binarySearch(value,mid+1,end, key); } } return -1; } }
运行结果:
是时候顶一下了:
这里只能查找一次,多次查找请移步我的站点
相关文章推荐
- 二分搜索的递归实现算法
- 漫谈递归:二分查找算法的递归实现
- 算法2,用递归的模式实现二分查找
- 算法入门---java语言实现的二分搜索树小结
- C语言经典算法(九)——递归实现二分查找的两种方法
- 漫谈递归:二分查找算法的递归实现
- 二分查找算法的递归、循环实现及其缺陷
- 二分查找算法的递归与非递归实现
- 芥末菌的算法笔记——递归与分治(二)二分搜索
- 【计算机算法分析】递归与分治策略——二分搜索与集合划分问题
- 二分搜索递归与非递归C语言实现
- 递归实现的二分搜索
- 算法练习--二分搜索哈希表-JS 实现
- 【算法拾遗】二分查找递归非递归实现
- 递归方法实现二分搜索
- 【算法拾遗】二分查找递归非递归实现
- 算法实现(3)二分搜索技术
- 二分搜索的递归和循环实现
- 算法练习--二分搜索哈希表-JS 实现
- Ackerman函数的递归、全排列的递归实现、整数划分的递归、二分搜索的递归、合并排序的递归、.快速排序