日期:2014-05-20 浏览次数:21019 次
import java.util.Scanner;
public class Main {
// 1至10000之间 数组最长就1000
// 打表就OK了,每读一个数字就以该数字为下标存入数字
// 如果给空间已经存储就说明这个数字重复了
// 最好O(2), 最坏O(n), 平均 O(n/2)
public static void main(String[] args) {
boolean[] a = new boolean[1001];
// 输入器
Scanner scanner = new Scanner(System.in);
int x;
// 如果输入器有数据
while (scanner.hasNext()) {
// 读取当前数据
x = scanner.nextInt();
// 如果是false,表示尚未使用该空间
// 则表示这个数没使用
if (!a[x]) {
// 就使用该空间
a[x] = true;
} else {
// 否则是true就说明已经出现了该数
System.out.println(x + "重复");
break;
}
}
}
}
// 1 2 3 4 5 6 7 8 9 10 1
// 1重复