lintcode convert-sorted-array-to-binary-search-tree-with-minimal-height 把排序数组转换为高度最小的二叉搜索树

来源:互联网 发布:女生bmi多少最好看知乎 编辑:程序博客网 时间:2024/06/08 09:03

问题描述

lintcode

笔记

buildTree函数最后别忘了return root

代码

/** * Definition of TreeNode: * class TreeNode { * public: *     int val; *     TreeNode *left, *right; *     TreeNode(int val) { *         this->val = val; *         this->left = this->right = NULL; *     } * } */class Solution {public:    /**     * @param A: A sorted (increasing order) array     * @return: A tree node     */    TreeNode *sortedArrayToBST(vector<int> &A) {        // write your code here        const int end = A.size() - 1;        return buildTree(A, 0, end);    }    TreeNode *buildTree(vector<int> A, int start, int end)    {        if (start > end)            return NULL;        int mid = (start + end) / 2;        TreeNode *root = new TreeNode(A[mid]);        root->left = buildTree(A, start, mid-1);        root->right = buildTree(A, mid+1, end);        return root;    }};
0 0