Binary Search

Binary search is used to search a key element from multiple elements. Binary search is faster than linear search. In case of binary search, array elements must be in ascending order. If you have unsorted array, you can sort the array using Arrays.

public class BinarySearch {

    public static void main(String str[]) {
        int[] elements = new int[]{11,17,18,45,50,71,95,98};
        int index = binarySearch(elements, 50);
        System.out.println("Found "+ elements[index]  + " at index : " + index);
    }

    private static int binarySearch(int[] elements, int search) {
        int pointer = 0;
        int size = elements.length;

        while(pointer <= size) {
            int median = (pointer+size)/2;
            if (search < elements[median]) {
                size = median-1;
            } else if (search > elements[median]) {
                pointer = median+1;
            } else {
                return median;
            }
        }
        return -1;
    }
}

Output:
Found 50 at index : 4

Leave a comment

Hey!

I’m Bedrock. Discover the ultimate Minetest resource – your go-to guide for expert tutorials, stunning mods, and exclusive stories. Elevate your game with insider knowledge and tips from seasoned Minetest enthusiasts.

Join the club

Stay updated with our latest tips and other news by joining our newsletter.