Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

// binary search in java

import java.util.*;

public class BinarySearchNames {

public static void main(String[] args) {


Scanner scanner = new Scanner(System.in);

System.out.print("Enter the number of names: ");


int n = scanner.nextInt();

String[] names = new String[n];

System.out.println("Enter the names:");


for (int i = 0; i < n; i++) {
names[i] = scanner.next();
}

Arrays.sort(names); // Sort the names array for binary search

System.out.print("Enter the name to search for: ");


String searchName = scanner.next();

int index = binarySearch(names, searchName);

if (index != -1) {
System.out.println("Name found at index: " + index);
} else {
System.out.println("Name not found in the array.");
}

scanner.close();
}

public static int binarySearch(String[] names, String searchName) {


int left = 0;
int right = names.length - 1;

while (left <= right) {


int mid = left + (right - left) / 2;
int result = searchName.compareTo(names[mid]);

if (result == 0) {
return mid;
} else if (result < 0) {
right = mid - 1;
} else {
left = mid + 1;
}
}

return -1; // Name not found


}
}

You might also like