File tree Expand file tree Collapse file tree 1 file changed +18
-1
lines changed Expand file tree Collapse file tree 1 file changed +18
-1
lines changed Original file line number Diff line number Diff line change @@ -375,8 +375,25 @@ var sortedArrayToBST = function (nums) {
375
375
};
376
376
```
377
377
378
+ ##C
379
+ 递归
380
+ ``` c
381
+ struct TreeNode* traversal (int* nums, int left, int right) {
382
+ if (left > right)
383
+ return NULL;
384
+ int mid = left + ((right - left) / 2);
385
+ struct TreeNode* root = (struct TreeNode* )malloc(sizeof(struct TreeNode));
386
+ root->val = nums[ mid] ;
387
+ root->left = traversal(nums, left, mid - 1);
388
+ root->right = traversal(nums, mid + 1, right);
389
+ return root;
390
+ }
378
391
379
-
392
+ struct TreeNode* sortedArrayToBST(int* nums, int numsSize) {
393
+ struct TreeNode* root = traversal(nums, 0, numsSize - 1);
394
+ return root;
395
+ }
396
+ ```
380
397
381
398
-----------------------
382
399
* 作者微信:[程序员Carl](https://mp.weixin.qq.com/s/b66DFkOp8OOxdZC_xLZxfw)
You can’t perform that action at this time.
0 commit comments