Maison >Java >javaDidacticiel >Comment utiliser la récursivité dans l'algorithme de recherche binaire de Java ?
1. Concept récursif
La technique de programmation d'un programme s'appelant lui-même est appelée récursivité. Transformez les problèmes à grande échelle en problèmes à petite échelle. Le problème reste le même et l’échelle devient plus petite.
2. Deux prémisses
Condition de terminaison - lorsque certaines conditions sont remplies, la fonction renvoie une valeur spécifique et n'appelle plus de manière récursive
Appel récursif - la fonction s'appelle elle-même et sa valeur d'entrée est plus proche de la condition de terminaison
3. Exemple récursif de recherche binaire
/** * 递归实现二分查找 * @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; } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!