Unique Binary Search Trees II [leetcode]

来源:互联网 发布:朱宸慧淘宝网店地址 编辑:程序博客网 时间:2024/06/07 21:58
    vector<TreeNode *> generateTrees(int n) {        return getTree(1, n);    }        vector<TreeNode*> getTree(int start, int end)    {        vector<TreeNode*> curRes;        if (start > end)         {            curRes.push_back(NULL);            return curRes;        }        for (int i = start; i <= end; i++)        {            vector<TreeNode*> left = getTree(start, i-1);            vector<TreeNode*> right = getTree(i+1, end);            for(int l = 0; l < left.size(); l++)            {                for (int r = 0; r < right.size(); r++)                {                    TreeNode* root = new TreeNode(i);                    root->left = left[l];                    root->right = right[r];                    curRes.push_back(root);                }            }        }        return curRes;    }

0 0
原创粉丝点击