求1,1,2,3,5,8,13 斐波那契数列第N个数的值
2024-08-28 11:13:36
朋友问了个斐波那契算法。我给出了个递归算法
public static int Foo(int n)
{
if (n <= )
{
return n;
}
else
{
return Foo(n - ) + Foo(n - );
}
}
结果被打击了,说递归效率不行啊,于是网上饿补了下,发现很多方法,总结了两个
1. 递推工式 num[i + 2] = num[i + 1] + num[i];
public static int GetNum1(int n)
{
int result = ;
if (n <= )
{
result = n;
}
else
{
int[] num = new int[n];
num[] = ;
num[] = ; System.Console.Write(num[] + " " + num[] + " ");
for (int i = ; i <n-; i++)
{
num[i + ] = num[i + ] + num[i];
result = num[i + ];
System.Console.Write(result + " ");
}
} return result;
}
2. 更简单的算法,这个很高级哦
y就是当前第n个值
x就是当前第n-1个的值
public static void GetNum2(int n)
{
if (n <= )
{
Console.WriteLine(n);
}
else
{
int x = , y = ;
for (int i = ; i <= n; i++, y = x + y, x = y - x)
{
Console.WriteLine(y + " ");
}
}
}
最新文章
- sqllite 默认当前日期写法
- 【Alpha版本】冲刺阶段——Day 7
- 【SPOJ 1812】Longest Common Substring II
- Scss sass
- group_concat
- 邮件应用Acompli和日历应用Sunrise(传微软曾考虑以80亿美元收购企业通讯公司Slack)
- Hadoop1.x原理
- spring整合ActiveMq
- server后台TCP连接存活问题
- 对于已经添加引用,还找不到类型或名字空间的错误及svn客户端清除用户帐号密码
- P1744 采购特价商品 最短路径
- 设计模式学习心得<;单利模式 Singleton>;
- CAD中的各种Polyline
- ORA-03113:通信通道的文件结尾-完美解决方案
- Dalvik与JVM区别
- jasmine-行为驱动测试
- Graph_Master(连通分量_E_Hungry+Tarjan)
- Docker Mysql主主同步配置搭建Demo
- Edit Distance——经典的动态规划问题
- openwrt web管理luci界面修改
热门文章
- CDOJ 1280 772002画马尾 每周一题 div1 矩阵快速幂 中二版
- iOS 日志管理异常捕获组件LFLogManager
- HDU 4642 Fliping game (2013多校4 1011 简单博弈)
- GCC编绎详解
- [Bug]IE11下,forms认证,出现无法保存cookie的问题
- VUE -- 如何快速的写出一个Vue的icon组件?
- JS isNaN()函数
- JS中for和forEach的区别
- c++ opencv3.4 保存和读取PCA模型
- Python 面试中 8 个必考问题(转载)