Given an array like the one below, I was wondering if there is an easy way to turn this array into an array with unique values only?
This is given:
numbers={5,5,4,3,1,4,5,4,5}
Turn it into a result array like this, preserving the original order:
{5,1,2,3,4}
Finding the non repeating element in an array can be done in 2 different ways. Method 1: Use two loops, one for the current element and the other to check if the element is already present in the array or not. Method 2: Traverse the array and insert the array elements and their number of occurences in the hash table.
You can use the combination of the SUM and COUNTIF functions to count unique values in Excel. The syntax for this combined formula is = SUM(IF(1/COUNTIF(data, data)=1,1,0)). Here the COUNTIF formula counts the number of times each value in the range appears. The resulting array looks like {1;2;1;1;1;1}.
In Java 8, use IntStream
to get unique elements of an array
int[] noDuplicates = IntStream.of(array).distinct().toArray();
The simplest way would be to create set from the array.
Integer[] array = ...
Set<Integer> set = new LinkedHashSet<Integer>(Arrays.asList(array ));
and then you can retrieve the array using:
set.toArray()
use LinkedHashSet if you want to maintain the order or TreeSet if you want to have it sorted.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With