使用递归进行全排列
#include
const long k=0;
using namespace std;
void f(int x[],int k)
{
int i,t;
if(k>=9)//判断是否输出
{
for(int i=0; i<9; i++)
{
cout<<x[i]<<"-";
k++;
}
cout<<endl;
return ;
}
for(i=k; i<9; i++)//进入递归
{
t=x[k];
x[k]=x[i];
x[i]=t;//一次改变数组中的个数的位置
f(x,k+1);
t=x[k];
x[k]=x[i];
x[i]=t;//把改变的位置变回来
}
}
int main()
{
int a[9]= {0,1,2,3,4,5,6,7,8};
f(a,0);
cout<<k<<endl;
}
递归法进行全排列
最新推荐文章于 2023-03-06 12:39:46 发布