Java の二分探索アルゴリズムで再帰を使用するにはどうすればよいですか?

WBOY
リリース: 2023-05-09 18:40:08
転載
854 人が閲覧しました

1. 再帰の概念

プログラムが自分自身を呼び出すプログラミング手法は、再帰と呼ばれます。大規模な問題を小規模な問題に変える。問題は同じままで、規模は小さくなります。

2. 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 の二分探索アルゴリズムで再帰を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート