package com.hubberspot.binarysearch.example; import java.util.Scanner; public class BinarySearch { public static void main(String[] args){ int[] numbers = {3, 4, 5, 6, 7, 2, -3, 4, 16, 14}; sort(numbers); Scanner scanner = new Scanner(System.in); System.out.println("Enter the number you want to " + "search from array : "); int key = scanner.nextInt(); boolean position = binarySearch(numbers,key); if(position == true) System.out.println("Array contain the element to " + "be searched"); else System.out.println("Array does not contain the element" + " to be searched"); } public static void sort(int[] list) { boolean nextPass = true; for (int k = 1; k < list.length && nextPass; k++) { nextPass = false; for (int i = 0; i < list.length - k; i++) { if (list[i] > list[i + 1]) { int temp = list[i]; list[i] = list[i + 1]; list[i + 1] = temp; nextPass = true; } } } } public static boolean binarySearch(int[] list, int key) { int low = 0; int high = list.length - 1; while (high >= low) { int mid = (low + high) / 2; if (key < list[mid]) high = mid - 1; else if (key == list[mid]) return true; else low = mid + 1; } return false; } }
Output of the program
Video tutorial to demonstrate how to implement Binary Search in Java.