当前位置:编程学习 > C#/ASP.NET >>

C#递归的详细说明

最近我遇到递归的算法,因为自己一直搞不懂什么方法的执行过程~希望有前辈好好给我讲讲,最好带一个详细的例子,感谢了 --------------------编程问答-------------------- 递归,简单说就是自己调用自己,直到执行循环终止 --------------------编程问答-------------------- --------------------编程问答--------------------

这个确实是最基本的一个递归,应该没有比这更通俗易懂的了。

引用 2 楼  的回复:
比如计算1+2+3+...+100
我们有一个函数sum(max),1+2+3+...+100记作sum(100)
那么sum(100) = sum(99) + 100,也就是1~100的和可以表示为1~99的和加上100,这个能理解么?
而sum(99)可以表示成sum(98) + 99
因此,我们可以写如下的函数
sum(max) = sum(max - 1) + max
同时,我……
--------------------编程问答-------------------- 其实递归就是数学归纳法在程序上的实现。 --------------------编程问答-------------------- 比如遍历一棵树(典型的,我们要在C盘中寻找一个文件),使用递归是最容易理解的。

你可以把寻找C盘下某文件的问题分解为,寻找C盘下每个文件夹下是否有这样的文件,以及C盘本身有没有这样的文件。而对于每个文件夹来说,它又可以分解为,它自身文件夹下的文件夹是否有这样的文件,以及自身文件夹是否有这样的文件,伪代码如下:
findfolder(foldername)
{
    foreach (folder in foldername)
    {
        findfolder(folder)
    }
    finditself
}
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,