首页 > 其他 > 详细

【递归】N位全排列

时间:2015-04-06 15:25:32      阅读:224      评论:0      收藏:0      [点我收藏+]
 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 
 4 int n;
 5 int a[10];
 6 
 7 void search(int m)
 8 {
 9 
10     if(m==n){
11         printfresult();
12     }else
13     {
14         int i;
15         for(i=m;i<n;i++)
16         {
17             swap(m,i);
18             search(m+1);
19             swap(m,i);
20         }
21     }
22 }
23 
24 void swap(int s,int b)
25 {
26     int temp ;
27     temp = a[s];
28     a[s] = a[b];
29     a[b]= temp;
30 }
31 
32 void printfresult()
33 {
34     int i;
35     for(i=0;i<n;i++)
36         printf("%d ",a[i]);
37         printf("\n");
38 }
39 
40 int main()
41 {
42     int i;
43     scanf("%d",&n);
44     for(i=0;i<n;i++)
45         a[i]=i+1;
46     search(0);
47     return 0;
48 }

 

【递归】N位全排列

原文:http://www.cnblogs.com/zhouyee/p/4395893.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!