百度2014全排列

来源:互联网 发布:知敬畏守底线心得 编辑:程序博客网 时间:2024/06/16 00:54

       2014年百度校招,全排列,这里采用深搜。

#include <iostream>#include <cstring>using namespace std;int a[50],v[50],b[50];int n;int sum;void DFS(int num){    int i;if(num==n)    {   sum++;        for(i=0;i<n-1;i++)        cout<<b[i]<<" ";cout<<b[n-1]<<endl;    }else{for(i=0;i<n;i++)    if(!v[i])    {        b[num++]=a[i];        v[i]=1;DFS(num);        v[i]=0;    num--;     }    }   }int main(){  while(cin>>n){sum=0;       for(int i=0;i<n;i++)       a[i]=i;       memset(v,0,sizeof(int));       DFS(0);cout<<sum<<endl;}    return 0;}


0 0
原创粉丝点击