码迷,mamicode.com
首页 > 其他好文 > 详细

递归和全排列

时间:2020-06-29 11:34:30      阅读:45      评论:0      收藏:0      [点我收藏+]

标签:using   情况   限时   efi   end   全排列   元素   style   pre   

#include<bits/stdc++.h>
using namespace std;
#define Swap(a,b) {int temp=a;a=b;b=temp;}
int data[]={1,2,3,4,5,6,7,8,9,10};
int num=0;
int Perm(int begin,int end)
{
    int i;
    if(begin==end){
        num++;
    }        //处理最终情况 ,递归结束 
    else
    for(i=begin;i<=end;i++){
        Swap(data[begin],data[i]);
        Perm(begin+1,end);
        Swap(data[begin],data[i]);
    }
 } 
 int main()
 {
     Perm(0,9);   //求10个数的全排列
     cout<<num<<endl;
 }
 //竞赛题在一般情况下限时1s,所以对于需要全排列的题目,其元素个数应该少于11个。 

 

递归和全排列

标签:using   情况   限时   efi   end   全排列   元素   style   pre   

原文地址:https://www.cnblogs.com/hrlsm/p/13206744.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!