108. Convert Sorted Array to Binary Search Tree(unsolved)

来源:互联网 发布:鸽子淘宝 编辑:程序博客网 时间:2024/06/16 08:54

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

解答:

/** * Definition for a binary tree node. * struct TreeNode { *     int val; *     TreeNode *left; *     TreeNode *right; *     TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:    TreeNode* sortedArrayToBST(vector<int>& nums) {        return sortArray(nums,0,nums.size());    }    TreeNode* sortArray(vector<int>& nums,int begin,int end)    {        if (begin>=end) return NULL;        int mid=(begin+end)/2;        TreeNode* root=new TreeNode(nums[mid]);        root->left=sortArray(nums,begin,mid);        root->right=sortArray(nums,mid+1,end);        return root;    }};
0 0
原创粉丝点击