В примере этой статьи рассказывается об двух точечном алгоритме поиска Java. Поделитесь этим для всех для вашей ссылки. Специфика заключается в следующем:
1. Предварительное условие: предпосылка двух точечных поисков заключается в том, что массив, который необходимо найти, должен быть отсортирован.
2. Принципы: Разделите количество на три части, в порядке, перед средним значением (SO -SALLED MIDIAN -это значение среднего положения массива). Затем, в свою очередь, рекурсивный процесс будет продолжать разложить первую половину или вторую половину на три части. Это может быть четко описано. Из описания видно, что этот алгоритм подходит для рекурсии, и те, кто рекурсия, могут быть реализованы с помощью циклов. Поэтому наша реализация разделена на два типа: рекурсию и цикл.
Реализовать код:
Public Class BinarySearch {public void main (string [] art) {int searcharrrrrrrr [] = new int [1000000]; Println (Binsearch (SearchArrrrrr, 0, searchArr.length-99)); End -start)/2 + start; (Arr, 0, mid -1, sear);} else if (sear> arr [mid]) {return binsearch (arr, mid+1, end, sear);} return -1;} // цикл два точка найдите Public Static Binsearch (int arr [], int key) {int mid = arrr.length/2; начало)/2+start; ]) {start = mid+1;}} return -1;}Сравнение эффективности:
Эффективность алгоритма повторного поиска цикла выше, чем рекурсивный алгоритм поиска двойного точка
Есть надежда, что эта статья полезна для дизайна программы Java каждого.