欢迎光临
我们一直在努力

怎么在Java的二分查找算法中使用递归

这篇文章主要介绍了怎么在Java的二分查找算法中使用递归的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么在Java的二分查找算法中使用递归文章都会有所收获,下面我们一起来看看吧。

1.递归概念

程序调用自身的编程技巧称为递归。将大规模的问题变成小规模的问题,问题不变,规模变小。

2.两个前提

终止条件——当一定条件满足时,函数返回特定值,不再递归调用

递归调用——函数调用自身,其输入值更接近终止条件

3.二分查找的递归实例

/**
     * 递归实现二分查找
     * @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;
        }
}

关于“怎么在Java的二分查找算法中使用递归”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“怎么在Java的二分查找算法中使用递归”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注云搜网行业资讯频道。

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。