12 二叉树中和为某一值的路径

Posted ghjnwk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了12 二叉树中和为某一值的路径相关的知识,希望对你有一定的参考价值。

0 引言

题目:输入一颗二叉树的根节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点
开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前)

1 抽象问题具体化

举例1:树的形态如图所示。给定的整数值为22,求路径。

技术分享图片

解答:所有的路径总共有三条,分别是

1)10->5->4,和为19;

2)10->5->7,和为22;

3)10->12,和为22.

2 具体问题抽象分析

分三步

1)写出所有的路径; vector<vector<int>>  allPath(TreeNode* p);

(1)前序遍历树,如果

 

2)逐个判断,不符合的删掉;   写个for循环即可

3)排序之后输出.  根据size进行排序即可

3 demo

 

4 代码优化

 


以上是关于12 二叉树中和为某一值的路径的主要内容,如果未能解决你的问题,请参考以下文章

《剑指Offer——二叉树中和为某一值的路径》代码

12 二叉树中和为某一值的路径

二叉树中和为某一值的路径

二叉树中和为某一值的路径

二叉树中和为某一值的路径-剑指Offer

acwing 47. 二叉树中和为某一值的路径