题目描述
给定一个整数 n,将数字 1∼n排成一排,将会有很多种排列方法。
现在,请你按照字典序将所有的排列方法输出。
include[HTML_REMOVED]
using namespace std;
const int N=10;
int n;
int a[N];
bool s[N];
void dfs(int x){
if(x>n){
for(int i=1;i<=n;i)
{
cout<<a[i]<<” “;
}
cout<<endl;
return ;
}
for(int i=1;i<=n;i)
{
if(s[i]==0){
a[x]=i;
s[i]=1;
dfs(x+1);
s[i]=0;
}
}
}
int main()
{
cin>>n;
dfs(1);
return 0;
}