Given a sorted (increasing order) array, Convert it to create a binary tree with minimal height.

Example

Given [1,2,3,4,5,6,7], return

     4/   \2     6/ \    / \
1   3  5   7

分析:这是一道非常明显的递归题。取array的中间数作为树的root,array 左边部分是左子树部分,array右边部分是右子树部分。

 1 /**
 2  * Definition of TreeNode:
 3  * public class TreeNode {
 4  *     public int val;
 5  *     public TreeNode left, right;
 6  *     public TreeNode(int val) {
 7  *         this.val = val;
 8  *         this.left = this.right = null;
 9  *     }
10  * }
11  */
12 public class Solution {
13     /**
14      * @param A: an integer array
15      * @return: a tree node
16      * cnblogs.com/beiyeqingteng/
17      */
18     public TreeNode sortedArrayToBST(int[] A) {
19         if (A == null || A.length == 0) return null;
20         return helper(A, 0, A.length - 1);
21     }
22
23     public TreeNode helper(int[] A, int i, int j) {
24         if (i == j) {
25             return new TreeNode(A[i]);
26         } else if (i > j) {
27             return null;
28         }  else {
29             int mid = i + (j - i) / 2;
30             TreeNode root = new TreeNode(A[mid]);
31             root.left = helper(A, i, mid - 1);
32             root.right = helper(A, mid + 1, j);
33             return root;
34         }
35     }
36 }

转载请注明出处:cnblogs.com/beiyeqingteng/

 

 

转载于:https://www.cnblogs.com/beiyeqingteng/p/5631738.html

Convert Sorted Array to Binary Search Tree With Minimal Height相关推荐

  1. Convert Sorted Array to Binary Search Tree - LeetCode

    目录 题目链接 注意点 解法 小结 题目链接 Convert Sorted Array to Binary Search Tree - LeetCode 注意点 不要访问空结点 题目要求的是平衡二叉搜 ...

  2. LeetCode: Convert Sorted Array to Binary Search Tree 解题报告

    Convert Sorted Array to Binary Search Tree Given an array where elements are sorted in ascending ord ...

  3. 【数组递归构造二叉树】LeetCode 108. Convert Sorted Array to Binary Search Tree

    LeetCode 108. Convert Sorted Array to Binary Search Tree Solution1:我的答案 构造二叉树利用递归 /*** Definition fo ...

  4. LeetCode: 108. Convert Sorted Array to Binary Search Tree

    题目 Given an array where elements are sorted in ascending order, convert it to a height balanced BST. ...

  5. [LeetCode] Convert Sorted Array to Binary Search Tree

    Given an array where elements are sorted in ascending order, convert it to a height balanced BST. Hi ...

  6. [LeetCode]Convert Sorted Array to Binary Search Tree

    题目描述:(链接) Given an array where elements are sorted in ascending order, convert it to a height balanc ...

  7. Convert Sorted Array to Binary Search Tree

    Given an array where elements are sorted in ascending order, convert it to a height balanced BST. 首先 ...

  8. LeetCode 108. Convert Sorted Array to Binary Search Tree

    题目: Given an array where elements are sorted in ascending order, convert it to a height balanced BST ...

  9. leetcode python3 简单题108. Convert Sorted Array to Binary Search Tree

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第一百零八题 (1)题目 英文: Given an array where elem ...

最新文章

  1. 常见的虚拟存储管理技术
  2. 16.刚体碰撞事件监测与处理
  3. 华为p20支持手机云闪付吗_华为官宣7款旗舰支持升级EMUI10.132系统,你的手机有份吗?...
  4. 关于Meminfo中MemAvailable 理解
  5. scala中一些常见用法
  6. dell服务器修改sata,Dell poweredge r210进BIOS改动磁盘控制器(SATA Controller)接口模式...
  7. 【游戏】基于matlab GUI音乐闹钟设计【含Matlab源码 1105期】
  8. pdf转HTML出现乱码,PDF转Word出现乱码解决方法
  9. 浏览器内置打开方正CEB是文件进行阅读
  10. [0CTF 2016]piapiapia WP
  11. 电商如何利用API接口获取商品信息数据
  12. MacOS使用conan
  13. Linux系统Shell if语句用法小结
  14. DPDK和VPP地址池
  15. 吉尔布雷斯的动作研究—《可以量化…
  16. Unity3d中渲染到RenderTexture的原理,几种方式以及一些问题
  17. 基于51单片机的语音控制GSM短信报警密码锁proteus仿真原理图PCB
  18. Web入门之VScode基本操作,文本框、输入框、单选框、多选框、列表、插入图片、插入按钮及跳转网页和页面
  19. 浅谈好未来的盈利模式
  20. 计算机职称考试在线软件,职称计算机考试模拟软件windowXP模块免费版

热门文章

  1. 路强 java 百度云,解决 Tried to download(403): 。。。zopfli-v2.0.2
  2. Android全面解析Handler
  3. 2021高考池州成绩查询,2021池州高考信息网
  4. ffmpeg 花屏的问题
  5. 摄像头成像数据可见窗口计算
  6. linux网络子系统研究:数据收发简略流程图
  7. oracle:oracle基础知识(二)
  8. 【算法】剑指 Offer 67. 把字符串转换成整数
  9. 【Elasticsearch】如何使用 Elasticsearch 6.2 搜索中文、日文和韩文文本 - 第 2 部分: 多字段
  10. 95-00-030-环境-IDEA构建源码阅读环境