全排列的经典算法1.cpp

来自「全排序」· C++ 代码 · 共 37 行

CPP
37 行
字号
#include <iostream> 
#include <vector> 
using namespace std; 

void permute(int,int,vector<int> ); 

int main(void) 
{ 
vector<int> v; 
permute(1,4,v); 
return 0; 
} 

void permute(int k,int n,vector<int> v) 
{ 
if(n<k) 
{ 
cout<<"error!"<<endl; 
return; 
} 

for(int i=0;i<k;i++) 
{ 
v.insert (v.begin ()+i,k); 
if(k==n) 
{ 
for(int j=0;j<v.size ();j++) 
{ 
cout<<v[j]; 
} 
cout<<endl; 
} 
else 
permute(k+1,n,v); 
v.erase (v.begin ()+i,v.begin ()+i+1); 
} 
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?