Question
Search for an element input by the user in a given (array for java/ List for Python) using binary search.
Enter size of list:5
Enter element in List:
1:10
2:20
3:30
4:40
5:50
Elements in given list:
[10, 20, 30, 40, 50]
Enter Element to be searched:30
Element is available at index: 3
Share code with your friends
Share on whatsapp
Share on facebook
Share on twitter
Share on telegram
Code
Java
Python
Java
import java.util.Scanner;
public class BinarySearch
{
public static void main(String[]args)
{
int size=0,lower=0,upper=0,M=0,arr[],i=0;
boolean flag=false;
Scanner sc=new Scanner(System.in);
System.out.println("Enter size of given Array:");
size=sc.nextInt();
arr=new int[size];
System.out.println("Enter elements in array:");
for(i=0;i< size;i++)
{
arr[i]=sc.nextInt();
}
System.out.println("Elements in given array:");
for(i=0;i< size;i++)
{
System.out.print(arr[i]+" ");
}
System.out.println();
upper=arr.length-1;
System.out.println("Enter the elements to be searched");
int s=sc.nextInt();
while(lower<=upper)
{
M=(lower+upper)/2;
if(s==arr[M])
{
System.out.println("Element is available at index "+(M+1));
flag=true;
break;
}
else if(s>arr[M])
{
lower=M+1;
}
else
{
upper=M-1;
}
}
if(flag==false)
{
System.out.println("Search element not found");
}
}
}
Python
li=[]
size=int(input("Enter size of list:"))
print("Enter element in List:")
for i in range(0,size):
print((i+1),end=":")
li.append(int(input()))
print("Elements in given list:")
print(li)
lower=0
upper=len(li)-1
mid=0
flag=False
elementToBeSearched=int(input("Enter Element to be searched:"))
while(lower<=upper):
mid=(lower+upper)//2
if(li[mid]==elementToBeSearched):
print("Element is available at index:",(mid+1))
flag = True
break
elif(li[mid]< elementToBeSearched):
lower=mid+1
else:
upper=mid-1
if(flag==False):
print(elementToBeSearched,"not found in given List")
Coding Store
Sale

ISC QUESTION PAPERS WITH SOLUTION(PROGRAMMING ONLY)
Sale
