Remove duplicates from integer array

前端 未结 23 2377
执念已碎
执念已碎 2020-12-01 18:52

I having a problem with coding this:

Write a static method named removeDuplicates that takes as input an array of integers and returns as a result a new

23条回答
  •  一生所求
    2020-12-01 19:34

    public class DistinctNumbers{
        public static void main(String[] args){
            java.util.Scanner input = new java.util.Scanner(System.in);
    
            System.out.print("Enter ten numbers: ");
            int[] numbers = new int[10];
            for(int i = 0; i < numbers.length; ++i){
                numbers[i] = input.nextInt();
            }
            System.out.println("The distinct numbers are:");
            System.out.println(java.util.Arrays.toString(eliminateDuplicates(numbers)));
        }
    
        public static int[] eliminateDuplicates(int[] list){
            int[] distinctList = new int[list.length];
            boolean isDuplicate = false;
            int count = list.length-1;
            for(int i = list.length-1; i >= 0; --i){
                isDuplicate = false;
                for(int j = i-1; j >= 0 && !isDuplicate; --j){
                    if(list[j] == list[i]){
                        isDuplicate = true;
                    }
                }
                if(!isDuplicate){
                    distinctList[count--] = list[i];
                }
            }
            int[] out = new int[list.length-count-1];
            System.arraycopy(distinctList, count+1, out, 0, list.length-count-1);
            return out;
        }
    }
    

提交回复
热议问题