美国华人网FuninUSA_唐人社区_北美华人论坛:找礼品卡,找折扣,找报价,找工作,找内推,找项目,找股票

 找回密码
 立即注册
    Logo1-800-PetMeds Free Shipping $49Take $10 Off Your First Order w/code: SAVE10 - 234 x 60
    ASICS AmericaPagoda Piercing Banner 234x60Sierra Trading Post
    搜索
    查看: 3242|回复: 5

    内推面经 -question about Leetcode #113 LeetCode – Path Sum II (Java- 唐人社区| ...

    [复制链接]

    18

    主题

    46

    帖子

    80

    积分

    新手上路

    Rank: 1

    积分
    80
    QQ
    发表于 2016-10-3 11:49:52 | 显示全部楼层 |阅读模式
    分享到:
    {$content}

    唐人社区-北美华人论坛-内推面经版-question about leetcode #113 LeetCode – Path Sum II (Java


      JobHunting
    标 题: question about Leetcode #113 LeetCode – Path Sum II (Java)


    just started leetcode practice.

    has a question about #113:
    public class Solution {
    public List pathSum(TreeNode root, int sum) {
    List all = new ArrayList();
    findPathSum(root, sum, all, new ArrayList());
    return all;
    }

    private void findPathSum(TreeNode node, int sum, List
    result, List l) {
    if (node == null) {
    return;
    }
    l.add(node.val);
    if (node.left == null && node.right == null && node.val == sum) {
    // has to make a copy, otherwise the content may be changed
    ArrayList curPath = new ArrayList(l);
    result.add(curPath);
    }
    findPathSum(node.left, sum - node.val, result, l);
    findPathSum(node.right, sum - node.val, result, l);

    l.remove(l.size() - 1);
    }
    }



    why is l.remove(l.size() - 1);?

    --

    回复 百度谷歌雅虎搜狗搜搜有道360奇虎

    举报

    25

    主题

    91

    帖子

    148

    积分

    注册会员

    Rank: 2

    积分
    148
    QQ
    发表于 2016-10-3 13:25:04 | 显示全部楼层
    JobHunting
    标  题: Re: question about Leetcode #113 LeetCode – Path Sum II (Java


    backtracking, it removes node value from list

    【 在 yxfabroad (生命终究难舍蓝蓝的白云天) 的大作中提到: 】
    : just started leetcode practice.
    : has a question about #113:
    : public class Solution {
    :     public List<List<Integer>> pathSum(TreeNode root, int sum) {
    :         List<List<Integer>> all = new ArrayList();
    :         findPathSum(root, sum, all, new ArrayList());
    :         return all;
    :     }
    :     
    :     private void findPathSum(TreeNode node, int sum, List<List<Integer>>
    : ...................



    --
    不求大富大贵,但求平安健康。

    21

    主题

    117

    帖子

    162

    积分

    注册会员

    Rank: 2

    积分
    162
    QQ
    发表于 2016-10-3 14:36:25 | 显示全部楼层
    JobHunting
    标  题: Re: question about Leetcode #113 LeetCode – Path Sum II (Java


    backtracking一般都要repair
    不然下一个尝试怎么做
    这个就是repair

    【 在 yxfabroad (生命终究难舍蓝蓝的白云天) 的大作中提到: 】
    : just started leetcode practice.
    : has a question about #113:
    : public class Solution {
    :     public List<List<Integer>> pathSum(TreeNode root, int sum) {
    :         List<List<Integer>> all = new ArrayList();
    :         findPathSum(root, sum, all, new ArrayList());
    :         return all;
    :     }
    :     
    :     private void findPathSum(TreeNode node, int sum, List<List<Integer>>
    : ...................



    --

    21

    主题

    95

    帖子

    141

    积分

    注册会员

    Rank: 2

    积分
    141
    QQ
    发表于 2016-10-3 15:08:37 | 显示全部楼层
    JobHunting
    标  题: question about Leetcode #113 LeetCode – Path Sum II (Java)


    just started leetcode practice.

    has a question about #113:
    public class Solution {
        public List<List<Integer>> pathSum(TreeNode root, int sum) {
            List<List<Integer>> all = new ArrayList();
            findPathSum(root, sum, all, new ArrayList());
            return all;
        }
       
        private void findPathSum(TreeNode node, int sum, List<List<Integer>>
    result, List<Integer> l) {
            if (node == null) {
                return;
            }
            l.add(node.val);
            if (node.left == null && node.right == null && node.val == sum) {
                // has to make a copy, otherwise the content may be changed  
                ArrayList<Integer> curPath = new ArrayList<Integer>(l);  
                result.add(curPath);  
            }
            findPathSum(node.left, sum - node.val, result, l);
            findPathSum(node.right, sum - node.val, result, l);

           l.remove(l.size() - 1);
        }
    }



    why is l.remove(l.size() - 1);?

    --

    21

    主题

    1214

    帖子

    2421

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    2421
    QQ
    发表于 2016-10-25 09:58:51 | 显示全部楼层
    我也是坐沙发的

    25

    主题

    1226

    帖子

    2418

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    2418
    QQ
    发表于 2016-10-29 16:53:10 | 显示全部楼层
    :lol
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    美国华人网|唐人社区|什么值得买FunInUSA.net发布的内推面经 -question about Leetcode #113 LeetCode – Path Sum II (Java- 唐人社区| ...帖子由网友提供或转载于网络,若发布的内推面经 -question about Leetcode #113 LeetCode – Path Sum II (Java- 唐人社区| ...侵犯了您的权益,请联系我们.
    Sasa.com

    Copyright ©2011 FunInUSA.NET All Right Reserved.  Powered by Discuz! X3.0 小黑屋

    本站信息均由会员发表,不代表美国华人网FunInUSA|唐人社区的立场,如侵犯了您的权利请发帖投诉  技术支持: 美国华人网FunInUSA|唐人社区

    安全联盟认证 安全联盟认证

    快速回复 返回顶部 返回列表