有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
解决方案 »
- stringbuffer问题
- 小弟刚写了个参数特别多 ,方法特别长的方法怎么优化?
- java网络方向
- JAVA性能与C++的一些疑惑(初级)
- 我做了个聊天室程序,当我在向里面加图片时有点问题,我想加入本地images里面的图片可是用ImageIcon()只可以获取和.class文件同一目录的
- 怎样创建类的数组
- JDK怎样设置在CMD中 也就是环境变量的设置
- 如何在JFrame上设定一个JLabel的位置?
- 头疼了,执行MYSQL语句,出现了莫名的错误!!!
- 大家看看
- 大家给点建议(实现类似表格内容动态增加的功能)
- 当我想退出整个程序时我是用dispose好还是system.exit(0)好。。或者其他的
public static void main(String[] args) {
Csdn csdn = new Csdn();
csdn.findNumber();
} public void findNumber(){
int groupNum = 0;
for(int i = 1;i <= 4;i++){
for(int j = i+1 ; j <= 4;j++){
for(int k = j+1;k <=4;k++){
groupNum++;
printNumber(groupNum,i,j,k);
}
}
}
System.out.println("一共分为"+ groupNum + "组,每组六个数");
}
public void printNumber(int groupNum,int i ,int j,int k){
System.out.println("第" + groupNum + "组:");
System.out.print(i * 100 + j * 10 + k + " ");
System.out.print(i * 100 + k* 10 + j+ " ");
System.out.print(j * 100 + i* 10 + k+ " ");
System.out.print(j * 100 + k* 10 + i+ " ");
System.out.print(k * 100 + i* 10 + j+ " ");
System.out.print(k * 100 + j* 10 + i+ " ");
System.out.println();
}}
public static void main(String[] args) {
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&&j!=k&&i!=k){
count++;
int temp=i*100+j*10+k;
System.out.println(temp);
}
}
}
}
System.out.println(count);
}
}
public class Main { /**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int[] list = {1, 2, 3, 4};
perm(list, 0, list.length - 1);
} private static void perm(int[] list, int i, int j) {
int k;
if (i > j) {
for (k = 0; k <= j; k++) {
System.out.print(list[k]);
}
System.out.println();
} else {
for (k = i; k <= j; k++) {
swap(list, i, k);
perm(list, i + 1, j);
swap(list, i, k);
}
}
} private static void swap(int[] list, int i, int k) {
int m;
m = list[i];
list[i] = list[k];
list[k] = m;
}
}