1,多维数组扁平化。原数组[[0],[2,3,4],1,[1,[2,3]]],输出[0,2,3,4,1,1,2,3]
{ //判断当前数组是否有子数组 function hasChildArray(arr) { return arr.some(element => { if (Array.isArray(element)) { has = true; return true; } }); } let sourceArr = [[0], [2, 3, 4], 1, [1, [2, 3]]]; let result = []; //递归 (function doFunc(arr) { if (hasChildArray(arr)) { for (let i = 0, l = arr.length; i < l; i++) { if (typeof arr[i] == "number") { result.push(arr[i]); } else if (Array.isArray(arr[i])) { doFunc(arr[i]); } } } else { result=result.concat(arr); } })(sourceArr); console.log(result); }
2,二叉树tree ,判断是否存在一条完整路径,其路径上节点的值之和为target,输出布尔值
来源:博客园
作者:Kai.Ma
链接:https://www.cnblogs.com/kaima/p/11424752.html