74_leetcode_Convert Sorted Array to Binary Search Tree
2014-06-20 14:05
429 查看
Given an array where elements are sorted in ascending order, convert it to a height balanced BST
1:特殊情况;2:取数组的中间的数构建根节点;3:数组的左边和右边分别构建左子树和右子树;4:注意递归结束情况
TreeNode *sortedArrayToBST(vector<int> &num)
{
if(num.size() == 0)
{
return NULL;
}
int size = (int)num.size();
return sortedArrayToBSTCore(num, 0, size - 1);
}
TreeNode *sortedArrayToBSTCore(vector<int> &num, int start, int end)
{
if(end < start)
{
return NULL;
}
int middle = (start + end) / 2;
TreeNode *root = new TreeNode(num[middle]);
root->left = sortedArrayToBSTCore(num, start, middle -1);
root->right = sortedArrayToBSTCore(num, middle + 1, end);
return root;
}
1:特殊情况;2:取数组的中间的数构建根节点;3:数组的左边和右边分别构建左子树和右子树;4:注意递归结束情况
TreeNode *sortedArrayToBST(vector<int> &num)
{
if(num.size() == 0)
{
return NULL;
}
int size = (int)num.size();
return sortedArrayToBSTCore(num, 0, size - 1);
}
TreeNode *sortedArrayToBSTCore(vector<int> &num, int start, int end)
{
if(end < start)
{
return NULL;
}
int middle = (start + end) / 2;
TreeNode *root = new TreeNode(num[middle]);
root->left = sortedArrayToBSTCore(num, start, middle -1);
root->right = sortedArrayToBSTCore(num, middle + 1, end);
return root;
}
相关文章推荐
- Convert Sorted Array to Binary Search Tree 分类: Leetcode 2014-12-07 10:49 74人阅读 评论(0) 收藏
- [LeetCode] Convert Sorted Array to Binary Search Tree, Solution
- leetcode 11: Convert Sorted Array to Binary Search Tree
- leetcode - Convert Sorted Array to Binary Search Tree
- [leetcode刷题系列]Convert Sorted Array to Binary Search Tree
- LeetCode Convert Sorted Array to Binary Search Tree
- LeetCode: Convert Sorted Array to Binary Search Tree
- Leetcode: Convert Sorted Array to Binary Search Tree
- leetcode -- Convert Sorted Array to Binary Search Tree
- [leetcode] Convert Sorted Array to Binary Search Tree
- [Leetcode 32] 108 Convert Sorted Array to Binary Search Tree
- LeetCode_Convert Sorted Array to Binary Search Tree
- LeetCode: Convert Sorted Array to Binary Search Tree
- Leetcode 108 Convert Sorted Array to Binary Search Tree
- [Leetcode] Convert Sorted Array to Binary Search Tree
- Leetcode: Convert Sorted Array to Binary Search Tree
- leetcode 11: Convert Sorted Array to Binary Search Tree
- leetcode: Convert Sorted Array to Binary Search Tree
- arrayfunction[LeetCode]Convert Sorted Array to Binary Search Tree
- [LeetCode]Convert Sorted Array to Binary Search Tree