【发布时间】:2015-04-18 22:56:30
【问题描述】:
嗨,所以我应该在数组排序后计算唯一元素的数量,不包括重复项,但我得到了错误的输出。
In in = new In(args[0]);
int[] whitelist = in.readAllInts();
Arrays.sort(whitelist);
int count = 0;
for (int i = 0; i < whitelist.length; i++) {
if (whitelist[i] == whitelist[count]) {
count++;
}
}
while (!StdIn.isEmpty()) {
int key = StdIn.readInt();
rank(key, whitelist);
}
System.out.println(count);
} }
预期输出:java InstrumentedBinarySearch tinyW.txt
65
得到:16
我计算了重复的数量还是什么?
【问题讨论】:
-
您能否提供更多代码来说明问题?
whitelist是什么? -
在你的脑海中运行程序(就像你是电脑一样),你可能会明白为什么它不起作用。
-
这是主要方法
-
之前已经回答过这个问题:stackoverflow.com/a/15752235/1980909
标签: java arrays duplicates