Find the non-distinct value in a given array
Input : {1,1,2,2,3,4,4}
Output : 3
Code
package wordpress; import java.util.Hashtable; public class Nondistinct { private static Integer firstNonDistinct(Integer[] input) { Hashtable<Integer, Integer> hash = new Hashtable<>(); for (Integer key : input) { if (hash.containsKey(key)) { int count = hash.get(key); hash.put(key, ++count); } else { hash.put(key, 1); } } for (Integer key : input) { if (hash.get(key) == 1) return key; } return 0; } public static void main(String[] args) { System.out.println(firstNonDistinct(new Integer[]{1, 1, 2, 2, 3, 4, 4})); // 3 System.out.println(firstNonDistinct(new Integer[]{1, 1, 2, 2, 3,3, 4, 4})); // 0 System.out.println(firstNonDistinct(new Integer[]{1,2,3,4})); // 1 System.out.println(firstNonDistinct(new Integer[]{-1,0,0,1,1})); // -1 } }