#include<bits/stdc++.h>
using namespace std;
const int N=10;
int n;
int path[N];
bool vis[N];
void dfs(int u)
{
if(u==n){
for(int i=0;i<n;++i){
cout<<path[i]<<" ";
}
cout<<endl;
}
for(int i=1;i<=n;++i){
if(!vis[i]){
path[u]=i;
vis[i]=true;
dfs(u+1);
vis[i]=false;
}
}
}
int main()
{
cin>>n;
dfs(0);
return 0;
}
算法2
(暴力枚举) O(n2)
blablabla
时间复杂度
参考文献
C++ 代码
blablabla