java中如何进行 递归二分查找呢?
下文笔者讲述java中递归二分查找的方法及示例分享,如下所示
递归二分查找的原理
将查找进行循环调用 直到满足指定的条件时,终止例: 递归二分查找的示例
/** * 递归实现二分查找 * @param arr * @param left * @param right * @param val * @return */ private static int binarySearch(int[] arr, int left, int right, int val) { if (val < arr[left] || val > arr[right] || left > right) { return -1; } int middle = (left + right)/2; if(val < arr[middle]){ return binarySearch (arr,0,middle-1,val); } if(val > arr[middle]){ return binarySearch (arr,middle+1,right,val); }else{ return middle; } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。