【leetcode】Convert Sorted Array to Binary Search Tree

来源:互联网 发布:手办 淘宝 推荐 编辑:程序博客网 时间:2024/06/05 11:31
/** * Definition for binary tree * struct TreeNode { *     int val; *     TreeNode *left; *     TreeNode *right; *     TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:    TreeNode *dfs(TreeNode *curNode,vector<int> &num,int sta,int end)    {        if(sta>end)            return NULL;        int mid=(sta+end)/2;        TreeNode *newNode=new TreeNode(num[mid]);        newNode->left=dfs(newNode,num,sta,mid-1);        newNode->right=dfs(newNode,num,mid+1,end);        return newNode;    }    TreeNode *sortedArrayToBST(vector<int> &num) {        // Note: The Solution object is instantiated only once and is reused by each test case.        return dfs(NULL,num,0,num.size()-1);    }};

原创粉丝点击