Binary search is faster then linear search if the collection is sorted and does not contains duplicated Values
public static void BinarySearch(int searchVal)
{
int lowerIndex = 0;
int higherIndex = arrNumbers.length;
int searchIndex = 0;
while(lowerIndex < higherIndex)
{
int middleIndex = (lowerIndex + higherIndex)/2;
if(searchVal < arrNumbers[middleIndex])
{
higherIndex = middleIndex + 1;
}
else if(searchVal > arrNumbers[middleIndex])
{
lowerIndex = middleIndex - 1;
}
else
{
searchIndex = middleIndex+1;
System.out.println("The element is Found at Index " + searchIndex);
return;
}
}
}