java算法小知识练习
偶尔翻开了以前的练习题,不自觉又想随手敲一遍,虽然有些思想依然是那么老套,但毕竟也算是对知识的巩固 了。
一、题目:有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
具体思路很简单,就是拿出一个数,跟其他三个中的任意两个不重复的组,最后加起来,
/** * 题目:有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? * 时间:2016年3月10日21:34:15 * */ public class Zushu { public static void main(String[] args) { int num= 0,count=0; for(int i =1;i<5;i++){ for(int j =1;j<5;j++){ for(int k=1;k<5;k++){ if(i!=j && i!=k && j!=k){ num = i*100+j*10+k; count++; System.out.print(num+" "); } } } } System.out.println(""); System.out.println("个数为:"+count); } }
打印结果为:
123 124 132 134 142 143 213 214 231 234 241 243 312 314 321 324 341 342 412 413 421 423 431 432
个数为:24
这种思路是比较笨 的一种方法,对于数字很多的时候,不太适合,嵌套循环太多,希望大神们有好的算法,多多指正!
版权声明:本文为gzd-123原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。