码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode——95.不同的二叉搜索树II

时间:2020-07-01 22:03:33      阅读:61      评论:0      收藏:0      [点我收藏+]

标签:nbsp   for   mic   png   style   div   i++   lazy   tree   

不是我自己写出来的,思想大概是懂的,没自己写,看了别人的代码;

public List<TreeNode> generateTrees(int n) {
        if(n == 0){
            return new LinkedList<>();
        }
        return generate_trees(1,n);

    }

    private LinkedList<TreeNode> generate_trees(int start, int end) {
        LinkedList<TreeNode> all_trees = new LinkedList<>();
        if(start > end){
            all_trees.add(null);
            return all_trees;
        }
        for(int i = start;i<=end ;i++){
            LinkedList<TreeNode> left_trees = generate_trees(start,i-1);
            LinkedList<TreeNode> right_trees = generate_trees(i+1,end);
            for(TreeNode l : left_trees){
                for(TreeNode r : right_trees){
                    TreeNode current_tree = new TreeNode(i);
                    current_tree.left = l;
                    current_tree.right = r;
                    all_trees.addLast(current_tree);
                }
            }
        }
        return all_trees;
    }

技术图片

 

 

——2020.7.1

leetcode——95.不同的二叉搜索树II

标签:nbsp   for   mic   png   style   div   i++   lazy   tree   

原文地址:https://www.cnblogs.com/taoyuxin/p/13221626.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!