Javatpoint Logo
Javatpoint Logo

Find unique elements in array Java

In Java, an array is a collection of elements of the same data type. An array doesn't restrict us from entering the same or repeated elements in it. So, many times we need to get the distinct elements from the array. In Java, there is more than one way to find unique elements from an array which are as follows:

  1. By storing all the elements to the hashmap's key.
  2. By using nested loop.
  3. By using sorting.
  4. By using hashing.
Find unique elements in array Java

By using hashmap's key

In Java, the simplest way to get unique elements from the array is by putting all elements of the array into hashmap's key and then print the keySet(). The hashmap contains only unique keys, so it will automatically remove that duplicate element from the hashmap keySet.

Let's take an example to understand how the hashmap's key is used to get the distinct element.

UniqueElementsExample1.java

Output

Find unique elements in array Java

By using nested loop

Another simple approach to getting distinct elements from the given array is by using the nested loop. The inner and outermost loop plays a very important role in this strategy. The outermost loop takes an element one by one from the leftmost side of the array. The innermost loop compares it with the right-side of this element. If it matches, we skip it else, print or store it into another array that contains the distinct element.

Let's take an example to understand how this strategy works in Java:

UniqueElementsExample2.java

Output

Find unique elements in array Java

By using sorting

The solution we have discussed before has O(n2) time complexity, but we have another solution that has less complexity than the previous one. We can get the distinct elements from the array by performing a sorting algorithm. This solution has O(nLogn) time complexity.

In order to get the distinct element from the array, we will first sort the array in ascending or descending order so that each element's occurrence becomes consecutive. After that, we will traverse that sorted array using the loop and skip all the consecutive repeated elements' index.

Let's take an example to understand how we can get the distinct element from the array by using the sorting algorithm.

UniqueElementsExample3.java

Output

Find unique elements in array Java

By using hashing

There is another way to get the distinct element from the array, i.e., hashing. By using the hashing, we can get a distinct element in O(n). We traverse the array from which we want to get the distinct element. We perform traversing from left to right, and in the hash table, we keep the record of the visited element.

Let's implement the code to understand how hashing is used to get the distinct element from the array.

UniqueElementsExample4.java

Output

Find unique elements in array Java

All the above-discussed methods are used to get the distinct elements from the array. All the methods have different time complexity to get the distinct element. All the methods play an important role in different scenarios.







Youtube For Videos Join Our Youtube Channel: Join Now

Feedback


Help Others, Please Share

facebook twitter pinterest

Learn Latest Tutorials


Preparation


Trending Technologies


B.Tech / MCA