c/c++算法优化,将1-9九个数不重复地赋给数组的9个元素,必须遍历所有可能
以前为三个元素赋值使用以下方法
for(i=0;i<3;i++)
for(j=i;j<3;j++)
for(k=j;k<3;k++)
{a[0]=i;a[1]=j;a[2]=k;}
这种方法很简便,但是当元素太多时代码太长,而且当元素个数变化时,代码必须更改,很是不便,所以请高手给个好的办法。
for(i=0;i<3;i++)
for(j=i;j<3;j++)
for(k=j;k<3;k++)
{
a[0]=i;a[1]=j;a[2]=k;
printf("%d %d %d \n",a[0],a[1],a[2]);//cout<<a[0]<<a[1]<<a[2]<<endl;//必须输出所有可能的组合
}