递归算法
来源:互联网 发布:mysql怎么卸载干净 编辑:程序博客网 时间:2024/06/05 07:03
递归算法是把问题转化为规模缩小了的同类问题的子问题
c#中如何使用:
方法一:
例:一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少。
public class MainClass
{
public static void Main()
{
Console.WriteLine(Foo(30));
}
public static int Foo(int i)
{
if (i <= 0)
return 0;
else if(i > 0 && i <= 2)
return 1;
else return Foo(i -1) + Foo(i - 2);
}
}
{
public static void Main()
{
Console.WriteLine(Foo(30));
}
public static int Foo(int i)
{
if (i <= 0)
return 0;
else if(i > 0 && i <= 2)
return 1;
else return Foo(i -1) + Foo(i - 2);
}
}
方法二:退出条件,递归算法的重点
public static int Sum(int num)
{
if (num == 1||num==2)
return 1;
else
return Sum(num - 1) + Sum(num - 2);
}
static void Main(string[] args)
{
int sum = 1;
for (int i = 0; i <=1; i++)
{
sum = sum + 1;
}
Console.WriteLine(Sum(30));
Console.ReadLine();
}
{
if (num == 1||num==2)
return 1;
else
return Sum(num - 1) + Sum(num - 2);
}
static void Main(string[] args)
{
int sum = 1;
for (int i = 0; i <=1; i++)
{
sum = sum + 1;
}
Console.WriteLine(Sum(30));
Console.ReadLine();
}
阅读全文
0 0
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 递归算法
- 用dbcp加载数据源的时候报错org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [or
- cocos2d-x CCUserDefault
- Tomcat服务器结构以及web应用部署
- LeetCode【70】Climbing Stairs
- FastDHT配合FastDFS进行文件上传去重
- 递归算法
- eclipse里面关于subversion(svn)的使用之提交代码
- CCS与Matlab数据交换详解
- 分布式事务:不过是在一致性、吞吐量和复杂度之间,做一个选择
- java获取获得Timestamp类型的当前系统时间
- MyEclipse将Java项目打包成jar文件
- Kotlin基础 3
- Android Studio升级到2.3.3的遇到各种奇葩问题的万金油解决办法
- windows内核exploit训练项目HackSysExtremeVulnerableDriver(HEVD)-整数溢出