首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

高手们,帮解释解释递归吧,最好带个简单的小例子,无意间想起的多谢各位了

2012-01-29 
高手们,帮解释解释递归吧,最好带个简单的小例子,无意间想起的谢谢各位了高手们,帮解释解释递归吧,最好带个

高手们,帮解释解释递归吧,最好带个简单的小例子,无意间想起的谢谢各位了
高手们,帮解释解释递归吧,最好带个简单的小例子,无意间想起的谢谢各位了

[解决办法]
计算N的阶乘
public int results(int n)
{
if(n==0||n==1)
return 1;
else
return n*results(n-1); //递归调用函数本身
}


[解决办法]
给你个阶乘的例子
递归说通俗点就是自己调用自己玩
private int factorial(int num)
{
if (num < 0)
{
throw new Exception( "不能为小于0的整数! ");
}
if (num == 0)
{
return 1;
}
return num*factorial(num - 1);
}

int i = this.factorial(3);

[解决办法]
public int results(int n)
{
if(n==0||n==1)
return 1;
else
return n*results(n-1); //递归调用函数本身
}
借用上面的例子实现阶乘。函数调用自己本身如:n*results(n-1),而results(n-1)又会调用(n-1)*results(n-2),.........直到n=1是执行1×1.然后在反推回去得到结果。
其实递归就是一层一层的拨,然后在包回去的过程。效率并不高的。

热点排行