//本程序目的还是生成不相同的随机数,是一种执行效率及低的算法,不过n很大时程序还是可以用的!
public class NoSameRandom3 {
private static int n = 10;
private int a[] = new int[n];
private boolean flag = false;
public void csp(int n) {
flag = true;
t: {
for (int i = 0; i < n; i++) {
a[i] = (int) (Math.random() * 10);
for (int j = 0; j < i; j++) {
if (a[i] == a[j]) {
flag = false;
break t;
}
}
}
}
if (flag == false) {
NoSameRandom3 nsr = new NoSameRandom3();
nsr.csp(n);
}
if (flag == true) {
print();
}
}
public void print() {
for (int i = 0; i < n; i++) {
System.out.print(" " + a[i]);
}
}
// 测试入口
public static void main(String args[]) {
NoSameRandom3 nsr = new NoSameRandom3();
nsr.csp(n);
}
}
产生不相同的随机数(低效率版)
最新推荐文章于 2019-07-16 22:37:18 发布