n位数字的全排列共有n!种。
本排列只对字符型数字排列进行输出,输出的是字符型数字。这种问题一般都需要用递归的方法。
java代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
public class test { static int k= 0 ; public static void main(string[] args) { int a[]={ 1 , 2 , 3 , 4 , 5 }; permutations(a, 0 , 4 ); } public static void permutations( int []a, int m, int n){ if (m==n){ k++; system.out.print(k+ "个:" ); for ( int i= 0 ;i<=n;i++){ system.out.print(a[i]); } system.out.println(); } else { for ( int i=m;i<=n;i++){ int temp=a[m]; a[m]=a[i]; a[i]=temp; permutations(a,m+ 1 ,n); temp=a[m]; a[m]=a[i]; a[i]=temp; } } } |
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接
原文链接:https://blog.csdn.net/y999666/article/details/50777127