From eb52d3be88c22c7e722f475c31e148ecc3dd6f11 Mon Sep 17 00:00:00 2001 From: gulatikeshav <133638164+gulatikeshav@users.noreply.github.com> Date: Sat, 14 Oct 2023 11:46:59 +0530 Subject: [PATCH] Added binarySearch.java --- binarySearch.java | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 binarySearch.java diff --git a/binarySearch.java b/binarySearch.java new file mode 100644 index 0000000..6d6d6d4 --- /dev/null +++ b/binarySearch.java @@ -0,0 +1,41 @@ +/* + Binary Search is defined as a searching algorithm used in a sorted array by repeatedly dividing the search interval in half. +*/ + +import java.util.Scanner; + +public class binarySearch { + + public static int binarySearchFunction(int numbers[],int key){ + int start = 0, end = numbers.length -1; + + while(start <= end){ + int mid = (start + end) / 2; + + // comparisons + if(numbers[mid] == key){ // element found + return mid; + } + if(numbers[mid] < key){ // element is on right side + start = mid + 1; + } else { // element is on left side + end = mid - 1; + } + } + return -1; + } + public static void main(String args[]){ + Scanner sc = new Scanner(System.in); + + // prerequisite -> sorted arrays + + int numbers[] = {2,4,6,8,10,12,14}; + int key = 14; + + System.out.println("Index for key is : " + binarySearchFunction(numbers, key)); + + sc.close(); + } +} + +