题目描述

输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径

题目分析

这题基本上一看就知道应该深度遍历整个树,并且把已经走过的节点的和与期望值作比较就行,如果走到底还不符合要求的话,就要回退值。

代码

function FindPath(root, expectNumber) {
// write code here
const list = [],
listAll = [];
return findpath(root, expectNumber, list, listAll);
}
function findpath(root, expectNumber, list, listAll) {
if (root === null) {
return listAll;
}
list.push(root.val);
const x = expectNumber - root.val;
if (root.left === null && root.right === null && x === 0) {
listAll.push(Array.of(...list));
}
findpath(root.left, x, list, listAll);
findpath(root.right, x, list, listAll);
list.pop();
return listAll;
}

  

最新文章

  1. .net登录的一般模式
  2. Java Web基础:JSP基础概念
  3. Android往SD卡上存储文件
  4. java Reentrant Lock
  5. 【NOIP模拟赛】工资
  6. Maven3.x 插件开发入门
  7. jQuery提升性能技巧及个人总结
  8. 360随身wifi怎样购买?360随身wifi怎样预约?
  9. 自适应 or 移动前端页面布局的问题?
  10. css基础:格式与布局
  11. 《iOS Human Interface Guidelines》——Multitasking
  12. .NET MD5 加密
  13. Perl一行式:文本编解码、替换
  14. .Net语言 APP开发平台——Smobiler学习日志:如何设置页面的title
  15. 从 0 到 1 实现 React 系列 —— 2.组件和 state|props
  16. Linux(CentOS)下,下载安装Nginx并配置
  17. CentOS7.X中设置nginx和php-fpm的开机自启动
  18. Cassandra的数据模型的理解
  19. Java学习——上转型与下转型对象
  20. spring mvc防止表单重复提交的代码片段

热门文章

  1. Java 一致性Hash算法的学习
  2. SQL 四大功能DDL/DML/DCL/TCL
  3. POJ 3414 pots (未解决)
  4. 使用 intro.js 库
  5. 10.17小结:table.copy() 和 distinct 查询
  6. 补充:ajax post 方式请求
  7. JavaScript基础知识(三个判断、三个循环)
  8. mybatis+oracle实现简单的模糊查询
  9. python if 和 else
  10. aws cloudwatch监控怎么通过钉钉机器人报警