Find Missing Element
JohnWickkk
java
a month ago
1.2 kB
9
Indexable
// Online Java Compiler
// Use this editor to write, compile and run your Java code online
class Main {
public static int sum(int[] arr){
int sum=0;
for(int n: arr) sum+=n;
return sum;
}
//find duplicate item from a sorted arr
public static int duplicate(int[] arr){
for(int i = 0; i<arr.length-1; i++){
if(arr[i]==arr[i+1]){
return arr[i];
}
}
return 0;
}
//find duplicate item (O(n)) without sorted arr
public static int duplicate2(int[] arr){
for(int i =0; i< arr.length; i++){
int index = Math.abs(arr[i])-1;
if(arr[index]<0)return Math.abs(arr[index]);
else arr[index]= -arr[index];
}
return 0;
}
public static void main(String[] args) {
int[] arr = {1,2,2,3,4,6,7};
int n = 7;
int expectedSum = n*(n+1)/2;
int sum = sum(arr);
int duplicate = duplicate2(arr);
int missingNumber = expectedSum - (sum-duplicate);
System.out.println(missingNumber);
}
}Editor is loading...
Leave a Comment