一、递归实现全排列

 1 #include"cstdio"
 2 int A[50];
 3 void print_permutation(int n,int *A,int cur){
 4         if(cur==n){
 5         for(int i=0;i<n;i++)
 6             printf("%d",A[i]);
 7         printf("\n");
 8         }
 9         else for(int j=1;j<n+1;j++){
10         int ok=1;
11         for(int k=0;k<cur;k++)
12             if(A[k]==j)
13                 ok=0;
14             if(ok){
15             A[cur]=j;
16             print_permutation(n,A,cur+1);
17             }
18         }
19     }
20 int main(){
21     int n;
22     scanf("%d",&n);
23     print_permutation(n,A,0);
24     return 0;
25 }
View Code

相关文章:

  • 2021-09-07
  • 2021-10-10
  • 2022-12-23
  • 2022-12-23
  • 2021-07-04
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-04-25
  • 2022-12-23
  • 2022-12-23
  • 2022-03-06
  • 2021-11-03
  • 2022-12-23
  • 2021-05-13
相关资源
相似解决方案