深究递归和迭代的区别、联系、优缺点及实例对比

生来就可爱ヽ(ⅴ<●) 提交于 2019-11-29 14:59:35

递归

递归就是函数自己调用自己。

例:

 

解析:

 

   在程序运行的时候,调用函做是有代价的,那就是,要占用一片叫做栈(stacky的内存空间)当调用函数时,都必须要放一些数据到栈里当函数运行结束时这些数据会从栈里被取出,可想而知,

  如果调用了很多函数但是这些函数都不返回,栈就被塞满了,数据没地方放了,这种情况叫做栈溢出错误,对程序运行而言。这是致命的错误,因此程序会被操作系统强行终此。

  在Python中,可以人为设置递归调用的次数(深度),尽量保证程序不会崩溃。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!