题目描述
给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。
高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/convert-sorted-array-to-binary-search-tree
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
C++
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* TreeNode *left;
* TreeNode *right;
* TreeNode() : val(0), left(nullptr), right(nullptr) {}
* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
* };
*/
class Solution {
public:
TreeNode* sortedArrayToBST(vector<int>& nums) {
return buildtree(nums,0,nums.size());
}
TreeNode* buildtree(vector<int> &nums,int left, int right){
if(left==right)
return nullptr;
int mid=(left+right)/2;
TreeNode* root =new TreeNode(nums[mid]);
root->left=buildtree(nums,left,mid);
root->right=buildtree(nums,mid+1,right);
return root;
}
};```
博客围绕将升序整数数组转换为高度平衡二叉搜索树的题目展开,该高度平衡二叉树需满足每个节点左右子树高度差绝对值不超过1,题目来源于力扣,还给出了链接,后续使用C++进行相关操作。
90

被折叠的 条评论
为什么被折叠?



