leetcode_c++:树:Convert Sorted Array to Binary Search Tree(108)

来源:互联网 发布:js 修改title标题 编辑:程序博客网 时间:2024/06/05 16:44

Given an array where elements are sorted in ascending order, convert it to a height balanced BST.

//为一个排过序的数组建一棵平衡的 BST。


算法

o(n)


class Solution {private:    TreeNode *dfs(vector<int> &num, int left, int right) {        if (left > right)            return NULL;        int mid = (left + right) / 2;        TreeNode *root = new TreeNode(num[mid]);        root->left = dfs(num, left, mid - 1);        root->right = dfs(num, mid + 1, right);    }public:    TreeNode *sortedArrayToBST(vector<int> &num) {        return dfs(num, 0, num.size() - 1);    }};
0 0