尾部递归和迭代的区别
请教一个各位高手,递归和迭代怎么区分?(特别是尾部递归和迭代)最好有点小例子作解释~~
程序代码:int recursion(int a)
{
if(a>1)
{return a=recursion(a-1);}
else
{return a;}
}
上面代码中的a-1,就是迭代,因为由上次的值,生成了新值。
程序代码://迭代
int recursion(int a)
{
if(a>1)
{a=iterative(a-1);}
else
{return a;}
}
int iterative(int a)
{
int temp=a;
temp=temp*2;
return temp;
}