zoukankan      html  css  js  c++  java
  • Leetcode Sum Root to Leaf Numbers

    Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number.

    An example is the root-to-leaf path 1->2->3 which represents the number 123.

    Find the total sum of all root-to-leaf numbers.

    For example,

        1
       / 
      2   3
    

    The root-to-leaf path 1->2 represents the number 12.
    The root-to-leaf path 1->3 represents the number 13.

    Return the sum = 12 + 13 = 25.

    本题利用利用深搜到叶子节点,同时记录下sum即可

    int dfs(TreeNode *root, int sum){
        if(root == NULL) return 0;
        sum = root->val+sum*10;
        if(root->left == NULL && root->right == NULL) return sum;
        return dfs(root->left,sum)+dfs(root->right,sum);
    }
    
    int sumNumbers(TreeNode *root){
        if(root == NULL ) return 0;
        int sum = root->val;
        if(root-> left == NULL && root->right ==NULL) return sum;
        
        return dfs(root->left,sum) + dfs(root->right, sum);
    }
  • 相关阅读:
    2019春第一次实验报告
    2019春第二次实验报告
    第十二周编程总结
    第十一周编程总结
    第十周作业
    C语言II博客作业04
    C语言II博客作业03
    C语言II博客作业02
    C语言II博客作业01
    学期总结
  • 原文地址:https://www.cnblogs.com/xiongqiangcs/p/3796781.html
Copyright © 2011-2022 走看看