Sort and Search an Element in Java
Last Updated :
21 Oct, 2020
In Java sorting and searching an element in an array is very easy. Unlike C, where we have to make all the functions to work, Java has inbuilt functions to do the same work. To sort an array there is a sort function and to search an element in a sorted array there is a binarySearch() function. To learn more about these functions please follow the articles mentioned below:
Sorting: Arrays.sort() in Java with Examples
Time Complexity: O (n log n)
Syntax for Sorting:
Arrays.sort(array_name);
Searching: Arrays.binarySearch() in Java with Examples
For using Binary search array must be sorted previously
Important Points:
- If the input array is not sorted, the results are undefined and negative.
- If there are duplicates, there is no guarantee which one will be found.
Time Complexity: O (log n)
Syntax for Binary Searching:
Arrays.binarySearch(array_name, key);
We could always create user-defined functions but the inbuilt functions in Java are already using the least complexity algorithms so there is no need to make such functions.
Example 1: Finding an element in a sorted array.
Java
import java.util.*;
public class Gfg {
public static void main(String args[]) throws Exception
{
int array[] = { 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 };
int index = Arrays.binarySearch(array, 2 );
if (index >= 0 )
System.out.println( "Element 2 found at index: "
+ index);
else
System.out.println( "Element not found" );
}
}
|
Output:
Element 2 found at index: 1
Example 2: Sorting an array and searching for an element in the sorted array.
Java
import java.util.*;
public class Gfg {
public static void main(String args[]) throws Exception
{
int array[] = { 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 };
Arrays.sort(array);
System.out.println( "Sorted Array:" );
for ( int i = 0 ; i < array.length; i++) {
System.out.print(array[i] + " " );
}
System.out.println();
int index = Arrays.binarySearch(array, 0 );
if (index >= 0 )
System.out.println( "Element 2 found at index: "
+ index);
else
System.out.println( "Element not found" );
}
}
|
Output:
Sorted Array:
1 2 3 4 5 6 7 8 9 10
Element 2 found at index: 1
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...