递归的方法
思路:
类似于二叉树实现的两个思想
1、遍历
2、分解子问题
// 第一种思想
var bianpinghua = function(nums,res=[]) {
if(!(nums instanceof Array)){
res.push(nums)
return
}
nums.forEach((item)=>{
bianpinghua(item,res)
})
return res;
};
console.log(bianpinghua([[1,2],[3,4,[5,6]]]));
// 第二种思想
var bianpinghua = function(nums,res=[]) {
if(!(nums instanceof Array)){
res.push(nums)
return res
}
nums.forEach((item)=>{
res.push(...bianpinghua(item))
})
return res;
};
本文探讨了两种使用递归的思想来处理数组,分别是遍历和分解子问题。通过示例代码展示了如何在JavaScript中实现这两种方法,以[[1,2],[3,4,[5,6]]]这样的多层嵌套数组为例,解释了递归在处理复杂数据结构时的威力。
3656

被折叠的 条评论
为什么被折叠?



