热门推荐








递归是什么意思
问题描述
- 精选答案
-
程序调用自身的编程技巧称为递归( recursion)。
构成递归需具备的条件有:
1、子问题须与原始问题为同样的事,且更为简单。
2、不能无限制地调用本身,须有个出口,化简为非递归状况处理。;递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。;扩展资料:;递归一般用于解决三类问题:
1、数据的定义是按递归定义的。(Fibonacci函数,n的阶乘);
2、问题解法按递归实现。(回溯);
3、数据的结构形式是按递归定义的。(二叉树的遍历,图的搜索);递归的缺点:;递归解题相对常用的算法如普通循环等,运行效率较低。因此,应该尽量避免使用递归,除非没有更好的算法或者某种特定情况,递归更为适合的时候。在递归调用的过程当中系统为每一层的返回点、局部量等开辟了栈来存储,因此递归次数过多容易造成栈溢出。;参考资料来源:百度百科-递归
- 其他回答
-
递归是一种编程技术,它指的是一个函数通过调用自身来解决问题的方法。在递归中,函数会多次调用自己,每次调用都会解决一个规模更小的子问题,直到达到基本情况(也称为递归终止条件),然后逐步将这些子问题的结果合并为最终的解决方案。
递归的关键是要确保每次递归调用都会朝着基本情况的方向发展,这样才能确保递归最终结束,避免陷入无限循环。递归可以使问题的解决过程更简洁和易于理解,但需要注意的是,递归可能会消耗大量的内存和时间,因此在使用递归时需要谨慎考虑问题的规模和性能方面的问题。
- 其他回答
-
简单来说,就是一个函数直接或间接调用自身的一种方法。通常递归可以将一个复杂的大型问题层层转化为一个与原问题相似的规模较小的问题来求解。它的核心思想是把大事化小。
递归就好比查英文字典,当查找第一个词时你发现这个词的解释中有一个单词你看不懂,于是你开始查找第二个单词,当查第二个单词的时候你发现这个单词的解释中依然有你看不懂的单词,于是你开始了第三次查找…直到有一个单词的解释你全部都能看懂,那么递归结束,然后开始后退,逐个明白之前查过的每一个单词,最后知道了第一个单词的意思。
猜你喜欢内容
-
阿拉奶粉3段和2段的区别
阿拉奶粉3段和2段的区别回答数有3条优质答案参考
-
西安未央宫遗址公园坐几路公交到
西安未央宫遗址公园坐几路公交到回答数有3条优质答案参考
-
安徽理工大学全国排名及王牌专业
安徽理工大学全国排名及王牌专业回答数有3条优质答案参考
-
安徽理工大学好吗
安徽理工大学好吗回答数有3条优质答案参考
-
汉长安城未央宫遗址公园怎么进去
汉长安城未央宫遗址公园怎么进去回答数有3条优质答案参考
-
安徽理工大学好不好
安徽理工大学好不好回答数有3条优质答案参考
-
上海最好录取的国际高中
上海最好录取的国际高中回答数有3条优质答案参考
-
兴城温泉哪家好
兴城温泉哪家好回答数有3条优质答案参考
-
兴城距离海边最近的酒店
兴城距离海边最近的酒店回答数有3条优质答案参考
-
兴城哪家宾馆住宿好
兴城哪家宾馆住宿好回答数有3条优质答案参考