首页 > 代码库 > 数的全排列问题

数的全排列问题

//数的全排列问题//输入整数n   字典序输出1-n的全排列#include "iostream"#include "cstdio"#include "cstring"using namespace std;int visit[9];int ans[9];int n;void dfs(int k){    if(k==n)    {        for(int i=0;i<n;i++)            printf("%d ",ans[i]);        printf("\n");        return ;    }    for(int i=0;i<n;i++)    {        if(visit[i])            continue;        ans[k]=i+1;        visit[i]=1;        dfs(k+1);        visit[i]=0;    }}int main(){    while(~scanf("%d",&n))    {        memset(visit,0,sizeof(visit));        dfs(0);    }    return 0;}

 

数的全排列问题