您的位置:首页 > 编程语言 > Go语言

LeetCode-Convert Sorted Array to Binary Search Tree

2014-04-20 16:36 423 查看
#include <iostream>
#include <vector>
using namespace std;

struct TreeNode
{
int val;
TreeNode* left;
TreeNode* right;
};

TreeNode* ArrayToBST(vector<int>&num,int left,int right)
{
if(left>right)
return NULL;
int mid=left+((right-left)>>1);

TreeNode* root=(TreeNode*)malloc(sizeof(TreeNode));
root->val=num[mid];

root->left=ArrayToBST(num, left, mid-1);
root->right=ArrayToBST(num, mid+1, right);

return root;
}
TreeNode *sortedArrayToBST(vector<int> &num)
{
int left=0;
int right=num.size()-1;
if(num.size()<=0)
return NULL;

TreeNode *root=ArrayToBST(num, left, right);
return root;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Algorithm BST Array