递归

递归

    相信学过计算机语言编程的相关人士,一定知道递归,我从接触编程语言开始就听说过它,其实递归呢,就是假如有一个函数,而在这个函数内部还会出现调用函数自己。意思大家都理解,但是真的会应用吗?

function f1(){
console.log("我是递归函数");
f1();
}

上面的函数就是一个递归函数,但是一般使用递归函数,需要有结束条件,不然这个函数将会成为一个死循环的函数。
下面然我们来句两个例子吧!

  1. 计算n个数字的和
function getSum(num){
	if(num==1){
	return 1;
	}
	return num+getSum(num-1);
	}
	console.log(getSum(5));

在这里插入图片描述
由此可以看见递归的结果得15。

2.计算一个数字个个位数上的数字上的数字之和

function getEverySum(num){
	if(num<10){
	return 1;
	}
	return num%10+getEverySum(parseInt(num/10));
	}
	console.log(getEverySum(123));

在这里插入图片描述
由此可以看出通过递归的方式得出123各个位数数字相加得6

❀通过以上例子,发现递归之后的代码似乎变少了,但是理解还不是很容易,自己想出来也有一些费劲,但是,其实一般不会轻易用递归的,因为递归虽然看上去很方便,但是执行效率比较低,所以,以后递归函数,不到万不得已还是不会轻易用的。

今天就到这里了,下次继续,还有呢就是每天既要复习,还要学习新的知识,毕竟温故而知新,虽然,可能没有什么人看我的博客,可是我不能就此放弃写博客,这是一种检验成果的方式,毕竟,自己没有到大神级别,只能自己努力,不求赞,只求自己的技能可以提高,加油!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值