标题:
C语言经典算法之递归车厢
[打印本页]
作者:
苹果也疯狂
时间:
2014-5-22 09:40
标题:
C语言经典算法之递归车厢
/**********
递归题改为非递归题实例
车厢
********/
#include<stdio.h>
#define MAX 4
int stack[MAX],p=-1;
struct
{
intnum;
intsign;
}train[MAX];
void sub()
{
intinc;
if(p==MAX-1)
{
for(inc=0;inc<=p;inc++)
printf("%3d",stack[inc]);
printf("\n");
}
else
{
for(inc=0;inc<MAX;inc++)
if(train[inc].sign==0)
{
train[inc].sign=1;
stack[++p]=train[inc].num; /*
进栈
*/
sub(); /*
递归
*/
train[inc].sign=0;
p--; /*
出栈
*/
}
}
}
main()
{
inttemp;
for(temp=0;temp<MAX;temp++)
{
train[temp].num=temp+1;
train[temp].sign=0;
}
printf("The result is:\n");
sub();
}
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0