递归的概念
简单的说就是函数自己调用自己
递归的构成
1、假设递归函数已经写好
2、寻找递推关系
3、将递推关系的结构转换为递归体
4、将临界条件加入到递归体中(一定要加临界条件,某则陷入死循环,内存泄漏)
那什么样的场景用弟归呢,举一下通俗的例子:
假如老百姓每生一个儿子,政府就给100块钱补助,算一下你家四代后政府一共给了多少补助。这个例子是不是很通俗。下边我们用JS写一下这个程序:
var yeye= {
name:"王一",
haizi:[
{
name:"王一 一",
haizi:[
{name:"王小一"}
]
},
{
name:"王一 二",
haizi:[
{name:"王小二"}
]
},
{
name:"王一 二",
haizi:[
{name:"王小三"}
]},
]
}
buzhu = 0
function jishuan( fubei){
//如果有下一代进入循环,没有退出
if((fubei.haizi||[]).length){
//累加补助
buzhu += fubei.haizi.length*100;
for(var i=0;i //用方法本身再计算下一代的下一代,直到没有下一代退出函数 jishuan( fubei.haizi[i]) } } }
页面更新:2024-03-02
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号