首页 > 代码库 > JAVA学习笔记----二分查找递归
JAVA学习笔记----二分查找递归
public class Main{ public static int rank(int key, int[] a){ return rank(key,a, 0 ,a.length -1 ); } public static int rank(int key, int[] a, int lo , int hi){ if (lo > hi){System.out.println(" 找不到 ");return -1;} System.out.println(String.format("max index is ->%s",hi)); int mid = lo + (hi - lo)/2; System.out.println(String.format("index is -> %s",mid)); if (key < a[mid]){ System.out.println(String.format("%s is less than %s",key,a[mid])); return rank(key, a, lo ,mid-1); } else if (key > a[mid]){System.out.println(String.format("%s is more than %s",key,a[mid])); return rank(key,a, mid+1,hi);} else {System.out.println(String.format("%s matched %s ----------> index %s!!!",key,a[mid],mid));return mid;} } public static void main(String args[]){ int[] a = {1,2,3,4,5,6,43534,534535,1231,313,53,5,21312,3,123,123,12321,312312,31,24,5,34,6,7,353,5423,42,424,234,1321,34,43,6457,4} ; rank(100,a); rank(5,a); } }
JAVA学习笔记----二分查找递归
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。