JavaScript中的递归函数

再此之前呢,我们要先知道什么是递归函数?

一.什么是递归函数?

递归函数:是一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,也是一种循环运算的一种算法模式。这种技术可以用来解决一些复杂的问题,比循环更简洁易懂。

递归函数是需要有边界条件的,如果没有那么它就会无限制的调用这个本身,就会出现死循环。所以必须要有一个终止处理或计算的出口,我们给它设置一个结束条件,就是为了避免出现死循环。

复制代码
function fn(){	            //一个fn的函数
	console.log(12345);		//打印的数字
	fn();					//调用的函数本身
}
fn();						//调用的函数

这就是一个死循环。

优缺点:

  • 优点:结构清晰,可读性强,为设计算法,调试程序带来方便。
  • 缺点:运算效率低,所耗费的计算时间1和占用的存储都比非递归函数要多。
相关推荐
咖啡八杯几秒前
GoF设计模式——装饰模式
java·算法·设计模式·装饰器模式
装不满的克莱因瓶2 分钟前
实现矩阵的点积:从数学原理到 NumPy 实战
人工智能·线性代数·算法·机器学习·矩阵·numpy
HZ·湘怡2 分钟前
树 的定义 与 性质
算法·
梦想的颜色2 分钟前
Docker 入门指南:从零开始掌握容器化技术
运维·服务器·vscode·python·算法·docker·云原生
cpp_25015 分钟前
P10109 [GESP202312 六级] 工作沟通
数据结构·c++·算法·题解·洛谷·gesp六级
吴可可1235 分钟前
CAD二次开发中多段线定点分割技巧
算法
ʚ希希ɞ ྀ8 分钟前
全排列 --- 回溯
算法·leetcode·深度优先
玉树临风ives9 分钟前
atcoder ABC 460 题解
数据结构·c++·算法
水无痕simon10 分钟前
9 C语言的基础练习
c语言·开发语言·算法
8Qi815 分钟前
LeetCode 124. 二叉树中的最大路径和(Hard)
算法·leetcode·二叉树·递归