二分搜索的递归实现算法
来源:互联网 发布:单片机原理及应用pdf 编辑:程序博客网 时间:2024/06/06 21:43
输入:先输入进行二分搜索元素的个数,然后按大小依次输入(或随机生成,然后排序)每个数字,最后输入要求搜索的元素。
输出:要求搜索元素的下标(下标从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[n]; 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; }}
运行结果:
是时候顶一下了:
这里只能查找一次,多次查找请移步我的站点
0 0
- 二分搜索的递归实现算法
- 二分搜索的递归实现算法
- 递归实现的二分搜索
- 二分搜索算法(递归和非递归实现)
- 二分搜索算法的实现
- 二分搜索的递归和循环实现
- 二分搜索的递归与非递归实现
- 二分搜索非递归和递归算法
- Java实现二分查找的递归算法
- 漫谈递归:二分查找算法的递归实现
- 二分查找算法的递归与非递归实现
- 二分查找算法的递归与非递归实现
- 实现二分查找算法的递归及非递归。
- 实现二分查找算法的递归及非递归
- 二分搜索算法(折半查找)原理以及递归(recuition),迭代(iteration)的两种实现源代码
- 二分搜索算法(折半查找)原理以及递归(recuition),迭代(iteration)的两种实现源代码
- 二分查找算法递归实现
- 递归算法实现二分查找
- android基础学习4————Activity的存活
- CSS 水平和垂直居中对齐
- 变形课 HDU
- 看着大本营 坚持写博客
- 模板顺序表
- 二分搜索的递归实现算法
- Android分组悬浮列表实现
- [LeetCode]283. Move Zeroes
- Spring:基于注解的Spring MVC(下)
- 多线程
- bzoj 2539: [Ctsc2000]丘比特的烦恼 (KM算法)
- 用于FUZZ测试的程序及其详解
- 栈的基本操作和实现C++模板类
- mysql