- 0
- 0
- 约2.36千字
- 约 3页
- 2023-12-08 发布于宁夏
- 举报
mysql递归性能_漫谈递归:递归的效率问题
递归在解决某些问题的时候使得我们思考的⽅式得以简化,代码也更加精炼,容易阅读。那么既然递归有这么多的优点,我们是不是什么问
题都要⽤递归来解决呢?难道递归就没有缺点吗?今天我们就来讨论⼀下递归的不⾜之处。谈到递归就不得不⾯对它的效率问题。
为什么递归是低效的
还是拿斐波那契(Fibonacci)数列来做例⼦。在很多教科书或⽂章中涉及到递归或计算复杂性的地⽅都会将计算斐波那契数列的程序作为经
典⽰例。如果现在让你以最快的速度⽤C#写出⼀个计算斐波那契数列第n个数的函数(不考虑参数⼩于1或结果溢出等异常情况),我不知你
的程序是否会和下列代码类似:
publicstaticulongFib(ulongn)
{
return(n==1||n==2)?1:Fib(n-1)+Fib(n-2);
}
这段代码应该算是短⼩精悍(执⾏代码只有⼀⾏),直观清晰,⽽且⾮常符合许多程序员的代码美学,许多⼈在⾯试时写出这样的代码可能⼼
⾥还会暗爽。但是如果⽤这段代码试试计算Fib(1000)我想就再也爽不起来了,它的运⾏时间也许会让你抓狂。
看来好看的代码未必中⽤,如果程序在效率不能接受那美观神马的就都是浮云了。如果简单分析⼀下程序的执⾏流,就会发现问题在哪,
您可能关注的文档
最近下载
- 《通信基础设施维护作业安全规范》.docx VIP
- 通信工程施工及维护作业安全生产操作规程.pdf VIP
- 通信基站代维企业巡检维护作业计划.docx
- T_NXCL 015—2022_硅部件用柱状多晶硅.pdf VIP
- 第19课《抗日战争的胜利》(教学设计)—2026年八年级秋季学期历史统编版.docx VIP
- 通信电源设备维护作业汇.doc
- 通信电源设备监理作业指南.doc VIP
- 055-通信电源设备维的护作业表单.doc VIP
- 第19课+抗日战争的胜利(情境化教学课件)历史统编版2024八年级上册.pptx VIP
- (2026秋新版)教科版五年级科学上册全册教案(完整版168页).docx
原创力文档

文档评论(0)