JavaScript中的递归函数

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

一.什么是递归函数?

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

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

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

这就是一个死循环。

优缺点:

  • 优点:结构清晰,可读性强,为设计算法,调试程序带来方便。
  • 缺点:运算效率低,所耗费的计算时间1和占用的存储都比非递归函数要多。
相关推荐
小尧嵌入式3 分钟前
Linux的shell命令
linux·运维·服务器·数据库·c++·windows·算法
Jeremy爱编码5 分钟前
leetcode热题路径总和 III
算法·leetcode·职场和发展
CoovallyAIHub8 分钟前
滑雪季又来了!如何用计算机视觉帮雪场解决最头疼的问题
深度学习·算法·计算机视觉
智算菩萨20 分钟前
音乐生成模型综述:从符号作曲到音频域大模型、评测体系与产业化趋势
人工智能·深度学习·算法
晚风(●•σ )22 分钟前
C++语言程序设计——12 排序算法-桶排序
c++·算法·排序算法
kgduu22 分钟前
Gin源码解析
算法·gin
小尧嵌入式39 分钟前
C++11线程库的使用(上)
c语言·开发语言·c++·qt·算法
蓝色汪洋1 小时前
luogu填坑
开发语言·c++·算法
小年糕是糕手1 小时前
【C++同步练习】类和对象(三)
开发语言·jvm·c++·程序人生·考研·算法·改行学it
Learner__Q1 小时前
每天五分钟:leetcode动态规划-递归与递推_day2
算法·深度优先