题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

时间:2020-12-23 11:31:08

题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 一共有这么多.
123 124 132 134 142 143 213 214 231 234 241 243 312 314 321 324 341 342 412 413 421 423 431 432
大家可以看到这个程序的结构 三个for循环嵌套,这样的时间复杂度T(n) = O(n^3),很大的数量级了,这个n和数字的数量有关系,n越大,时间复杂度越高,需要的时间就越多.

        int count = 0;//计数器
for (int i = 1; i <= 4; i++) {
for (int j = 1; j <= 4; j++) {
for (int k = 1; k <= 4; k++) {
if (i!=j && i != k && j !=k) {
count++;
System.out.println(i*100+j*10 +k);
}
}
}
}
System.out.println("不同的三位数的数量"+count);//24