Arrays 整数数组中唯一数的计数

Arrays 整数数组中唯一数的计数,arrays,duplicates,counting,Arrays,Duplicates,Counting,尝试通过静态方法获取数组的唯一(非重复)数。 例如,数组是{1,1,2,4,5,5,7,78,89} 输出为7 public class UniqueNumbes { public static void main(String[] args) { int[] test = {1, 2, 4, 5, 10, 30, 20, 1}; int num = numUnique(test); System.out.println(num);

尝试通过静态方法获取数组的唯一(非重复)数。 例如,数组是{1,1,2,4,5,5,7,78,89} 输出为7

public class UniqueNumbes {
    public static void main(String[] args) {
        int[] test = {1, 2, 4, 5, 10, 30, 20, 1};
        int num = numUnique(test);
        System.out.println(num);
    }
    public static int numUnique(int[] list){
        int count= 0;
        int fin =list.length;
        Arrays.sort(list);
        for (int i = 0; i<=list.length; i++){
            if(list[i]==list[i-1]) 
                count++;
            }
            return fin-count;
    }
}
公共类唯一性{
公共静态void main(字符串[]args){
int[]测试={1,2,4,5,10,30,20,1};
int num=numinique(测试);
系统输出打印项数(num);
}
公共静态int numUnique(int[]列表){
整数计数=0;
int fin=list.length;
数组。排序(列表);

对于(inti=0;i将所有内容放在一个集合中,并返回集合的大小

import java.util.HashSet;
import java.util.Set;

public class UniqueNumbes {

    public static void main(String[] args) {
        int[] test = { 1, 2, 4, 5, 10, 30, 20, 1 };
        int num = numUnique(test);
        System.out.println(num);
    }

    public static int numUnique(int[] list) {
        // java.util.Set
        // "A collection that contains no duplicate elements." 
        Set<Integer> set = new HashSet<Integer>();
        for (int i = 0; i < list.length; i++) {
            set.add(list[i]);
        }
        return set.size();

    }
}
import java.util.HashSet;
导入java.util.Set;
公共类唯一性{
公共静态void main(字符串[]args){
int[]测试={1,2,4,5,10,30,20,1};
int num=numinique(测试);
系统输出打印项数(num);
}
公共静态int numUnique(int[]列表){
//java.util.Set
//“不包含重复元素的集合。”
Set=newhashset();
for(int i=0;i
你有问题吗?请用你正在使用的语言来标记这个问题。Java?如果你对列表进行了排序…答案很简单…如果出于某种原因,排序列表不方便(例如,你有一个很大的集合,没有很多内存…这要复杂得多)…如果您使用的语言集不支持重复项…那就简单多了