我想创建一个9深度的minimax树。我使用了9个嵌套循环和太多变量。现在我想将此循环转换为递归。谢谢你的回答。这是我的代码。
int a,b,c,d,e,f,g,h;
for(a=0;a<9;a++)
{
y=y->branch[a];
yap(y,8);
for(b=0;b<8;b++)
{
y=y->branch[b];
yap(y,7);
for(c=0;c<7;c++)
{
y=y->branch[c];
yap(y,6);
for(d=0;d<6;d++)
{
y=y->branch[d];
yap(y,5);
for(e=0;e<5;e++)
{
y=y->branch[e];
yap(y,4);
for(f=0;f<4;f++)
{
y=y->branch[f];
yap(y,3);
for(g=0;g<3;g++)
{
y=y->branch[g];
yap(y,2);
for(h=0;h<2;h++)
{
y=y->brancg[h];
yap(y,1);
}
}
}
}
}
}
}
}
答案 0 :(得分:1)
void recursive(int max)
{
int a;
for(a=0;a<max;a++)
{
y=y->branch[a];
yap(y,max - 1);
if (max > 2)
recursive(max - 1);
}
}