赞
踩
思路很简单了,直接贴代码喽
struct TreeNode *createTree(struct TreeNode *bintree, int *nums, int left, int right) { if (right< left) return NULL;//定义快慢指针left right bintree = (struct TreeNode *)malloc(sizeof(struct TreeNode));//创建树的节点 int mid = (left + right) / 2;//根节点的值 bintree->val = nums[mid]; bintree->left = createTree(bintree->left, nums, l, mid - 1);//递归思想 bintree->right = createTree(bintree->right, nums, mid + 1, r);//递归思想 return bintree; } struct TreeNode* sortedArrayToBST(int* nums, int numsSize){ struct TreeNode *bintree;//创建指向二叉树的指针 bintree = createTree(bintree, nums, 0, numsSize - 1); return bintree; }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。