zoukankan      html  css  js  c++  java
  • 剑指Offer_编程题_24

    题目描述

    输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。
    /*
    struct TreeNode {
    	int val;
    	struct TreeNode *left;
    	struct TreeNode *right;
    	TreeNode(int x) :
    			val(x), left(NULL), right(NULL) {
    	}
    };*/
    class Solution {
    public:
        vector<vector<int> > FindPath(TreeNode* root,int expectNumber) {
            if(root == NULL){
                return vt;
            }
            num += root->val;
            path.push_back(root->val);
            if(num == expectNumber && root->left == NULL && root->right == NULL){
                vt.push_back(path);
            }
            if(num < expectNumber && root->left!=NULL){
                FindPath(root->left,expectNumber);
            }
            if(num < expectNumber && root->right!=NULL){
                FindPath(root->right,expectNumber);
            }
            num -= root->val;
            path.pop_back();
            return vt;
        }
    private:
        vector<vector<int>> vt;
        vector<int> path;
        int num = 0;
    };
    

      

  • 相关阅读:
    订餐系统
    throw和throws
    CF999E Solution
    CF1142B Solution
    CF965C Solution
    CF963B Solution
    CF999F Solution
    CF975D Solution
    CF997B Solution
    hdu 2553 N皇后
  • 原文地址:https://www.cnblogs.com/grglym/p/8993961.html
Copyright © 2011-2022 走看看