#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
void swap(int &x,int &y)
{
int temp=x;
x=y;
y=temp;
}
void qpl(vector<int> arr,int n){
if(n==arr.size()){
for(int i=0;i<arr.size();i++){
if(i!=arr.size()-1){
cout<<arr[i]<<" ";
}else{
cout<<arr[i];
}
}cout<<endl;
}
for(int i=n;i<arr.size();i++){
swap(arr[i],arr[n]);
qpl(arr,n+1);
swap(arr[i],arr[n]);
}
}
int main(){
int n;
while(true){
cin>>n;
if(n==0){
return 0;
}else{
vector<int> arr;
for(int i=1;i<=n;i++){
arr.push_back(i);
}
qpl(arr,0);
}
}
}
全排列c++算法代码
最新推荐文章于 2025-03-12 13:38:16 发布