【LeetCode击败99%+】最小高度树
题目
- 给定一个有序整数数组,元素各不相同且按升序排列,编写一个算法,创建一棵高度最小的二叉搜索树。
示例:
给定有序数组: [-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树:0 / \ -3 9 / / -10 5
代码
/*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode(int x) { val = x; }* }*/
class Solution {public TreeNode sortedArrayToBST(int[] nums) {TreeNode root = helper(nums, 0, nums.length - 1);return root;}public TreeNode helper(int[] nums,int left,int right){if(left>right){return null;}int mid = (left + right) / 2;TreeNode root = new TreeNode(nums[mid]);root.left = helper(nums, left, mid - 1);root.right = helper(nums, mid + 1, right);return root;}
}
结果
用时 | 内存 |
---|---|
击败100.00% | 击败86.41% |
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/minimum-height-tree-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
【LeetCode击败99%+】最小高度树相关推荐
- LeetCode 310. 最小高度树(图 聪明的BFS,从外向内包围)
文章目录 1. 题目 2. 解题 2.1 暴力BFS 2.2 聪明的BFS 1. 题目 对于一个具有树特征的无向图,我们可选择任何一个节点作为根.图因此可以成为树,在所有可能的树中,具有最小高度的树被 ...
- LeetCode 310 最小高度树
题目描述 树是一个无向图,其中任何两个顶点只通过一条路径连接. 换句话说,一个任何没有简单环路的连通图都是一 棵树.给你一棵包含 n 个节点的数,标记为 0 到 n - 1 .给定数字 n 和一个有 ...
- LeetCode 310. 最小高度树(广度优先遍历)
题目描述 对于一个具有树特征的无向图,我们可选择任何一个节点作为根.图因此可以成为树,在所有可能的树中,具有最小高度的树被称为最小高度树.给出这样的一个图,写出一个函数找到所有的最小高度树并返回他们的 ...
- 【LeetCode击败99%+】Nim 游戏
题目 你和你的朋友,两个人一起玩 Nim 游戏: 桌子上有一堆石头. 你们轮流进行自己的回合,你作为先手. 每一回合,轮到的人拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者. 假设你们每一 ...
- 二叉搜索树-创建最小高度树(递归)
题意: 给定一个有序整数数组,元素各不相同且按升序排列,编写一个算法,创建一棵高度最小的二叉搜索树. 这里回忆一下二叉搜索树的概念: 对于树中的所有子树都有,左子树上的值都小于根节点的值,右子树上的值 ...
- 【数据结构与算法】之深入解析“最小高度树”的求解思路与算法示例
一.题目要求 树是一个无向图,其中任何两个顶点只通过一条路径连接.换句话说,一个任何没有简单环路的连通图都是一棵树. 给你一棵包含 n 个节点的树,标记为 0 到 n - 1,给定数字 n 和一个有 ...
- leetcode310. 最小高度树(bfs)
对于一个具有树特征的无向图,我们可选择任何一个节点作为根.图因此可以成为树,在所有可能的树中,具有最小高度的树被称为最小高度树.给出这样的一个图,写出一个函数找到所有的最小高度树并返回他们的根节点.格 ...
- 面试题 04.02. 最小高度树
2020-04-20 1.题目描述 最小高度树 2.题解 递归以及二分求解即可. 注意这里如何取出vector中某个区间内的元素. 3.代码 /*** Definition for a binary ...
- 310. 最小高度树
链接:https://leetcode-cn.com/problems/minimum-height-trees/ 题解:https://leetcode-cn.com/problems/minimu ...
- JavaC++题解与拓展——leetcode310.最小高度树【复习链式前向星】
每日一题做题记录,参考官方和三叶的题解 目录 题目要求 思路一:动态规划 Java 链式前向星 C++ 思路二:拓扑排序+BFS Java C++ 总结 题目要求 思路一:动态规划 遍历整个图,当前遍 ...
最新文章
- 分数序数之和c语言,用c语言求解:有一分数序列2/1,3/2,5/3,8/5,13/8,21/13,…求这个数列的前20项之和....
- flink 4-输出
- 开发中常见的十种对缓存的错误使用
- php str_replace 字符串替换
- android学习笔记:数据库存储
- 架构运维篇(二):Centos7/Linux安装部署Tomcat环境
- PAT之STL:vector、set、map、stack、queue
- Listary 6 插件开发教程:使用 Javascript 开发
- 天刀服务器未响应,天涯明月刀卡顿怎么办 教你如何优化游戏不在卡顿
- linux不能显示微软雅黑字体
- “我是技术总监,我确实答不出那么多技术细节”
- 01-探寻 JavaScript 反爬虫的根本原因
- [Jetson TX2] NVIDIA Jetson TX2 参数介绍
- 小米云服务器怎么管理员密码,小米路由器初始密码是什么 小米路由器管理密码是多少-192路由网...
- 一加5应用未安装怎么解决_如何解决一加手机x安装不了软件下载的问题?
- 中文编程发展与兴起的重要意义
- Python智能机械助理
- HBase 数据库检索性能优化策略
- STM32添加以太网连接
- 域名系统(DNS)反向查询