在不使用嵌套循环的情况下查找数组中的重复元素

时间:2015-07-18 06:30:45

标签: java arrays loops

我最近接受了一次采访,其中包括以下问题。请帮助解决可能的解决方案

用Java编写一个方法来查找整数数组中的重复元素,而不使用嵌套循环(for / while / do while等),而不使用库函数或标准API。

1 个答案:

答案 0 :(得分:1)

嘿,下面的解决方案具有复杂度O(n)并且工作正常。检查它是否有帮助。

public class Main {
    public static void main(String[] args) {
        int a[] = new int[]{10,3,5,10,5,4,6};
        String distinctElement="";
        String repetitiveTerms="";
        for(int i=0;i<a.length;i++){
            if(i==0){
                distinctElement+=a[i]+" ";
            }
            else if(distinctElement.contains(""+a[i])){
                repetitiveTerms+=a[i]+" ";
            }
            else{
                distinctElement+=a[i]+" ";
            }
        }

    }
}