кодесурса

Упражнения на Java: поиск указанного элемента в заданном массиве элементов с помощью бинарного поиска

script1adsense2code
script1adsense3code

Поиск Java: Упражнение-1 с решением

Напишите Java-программу для поиска указанного элемента в заданном массиве элементов с помощью бинарного поиска.

Пример решения:

Java-код:

public class Main {
     public static int binarySearch(int[] nums, int flag) {
        int hi_num = nums.length - 1;
        int lo_num = 0;
        while (hi_num >= lo_num) {
            int guess = (lo_num + hi_num) >>> 1;   
            if (nums[guess] > flag) {
                hi_num = guess - 1;
            } else if (nums[guess] < flag) {
                lo_num = guess + 1;
            } else {
                return guess;
            }
        }
        return -1;
    }
 
    public static void main(String[] args) {
        int[] nums = {1, 5, 6, 7, 8, 11};
        int search_num = 7;
        int index = binarySearch(nums, search_num);
        if (index == -1) {
            System.out.println(search_num + " is not in the array");
        } else {
            System.out.println(search_num + " is at index " + index);
        }
    }
}

Пример вывода:

 7 находится в индексе 3

Блок - схема:

«Блок-схема:

Редактор кода Java:

Внесите свой код и комментарии через Disqus.

Предыдущая: Упражнения по поиску Java.
Далее: напишите программу на Java, чтобы найти указанный элемент в заданном массиве элементов с помощью линейного поиска.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code