程序员面试金典 - 面试题 04.02. 最小高度树(二叉搜索树中序遍历)

1. 题目

给定一个有序整数数组,元素各不相同且按升序排列,编写一个算法,创建一棵高度最小的二叉搜索树。

示例:
给定有序数组: [-10,-3,0,5,9],

一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树:

      0 / \ -3   9 /   / -10  5 

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/minimum-height-tree-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 二叉搜索树中序遍历是有序的
  • 每次找到数组的中点作为root
  • 递归处理
class Solution {
public:TreeNode* sortedArrayToBST(vector<int>& nums) {return build(nums,0,nums.size()-1);}TreeNode* build(vector<int>& nums, int l, int r){if(l > r)return NULL;int mid = l+((r-l)>>1);TreeNode* root = new TreeNode(nums[mid]);root->left = build(nums,l,mid-1);root->right = build(nums,mid+1,r);return root;}
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477161.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

算法岗校招已成“人间地狱”,还有办法上岸吗

由于一系列众所周知的原因&#xff0c;算法岗的竞争越来越激烈&#xff0c;知乎上有个问题&#xff0c;形象的将算法岗的秋招形势比喻成了“人间地狱”。虽然有夸张的成分&#xff0c;但也一定程度上反映了如今算法岗“僧多粥少”的现状。内卷焦虑、网络偏差影响下&#xff0c;…

LintCode 1753. 写作业(二分查找)

1. 题目 n个人&#xff0c;他们每个人需要独立做 m 份作业。 第 i 份作业需要花费 cost[i] 的时间。由于每个人的空闲时间不同&#xff0c;第 i 个人有 val[i] 的时间&#xff0c;这代表他做作业的总时间不会超过 val[i]。每个人都按照顺序&#xff0c;从1号作业开始&#xff…

美团容器平台架构及容器技术实践

本文根据美团基础架构部/容器研发中心技术总监欧阳坚在2018 QCon&#xff08;全球软件开发大会&#xff09;上的演讲内容整理而成。 背景 美团的容器集群管理平台叫做HULK。漫威动画里的HULK在发怒时会变成“绿巨人”&#xff0c;它的这个特性和容器的“弹性伸缩”很像&#xf…

全球1000+研究员在Twitter直播训练超大模型??

文 | 王思若将视角转换到2020年&#xff0c;OpenAI发布了拥有1750亿参数量的GPT-3, 在阅读理解、语言翻译、问答等多种任务展现了令人惊艳的效果&#xff0c;算法工程二者结合展现了大模型的“暴力美学”&#xff0c;也同时开启了千亿、万亿参数模型的 “军备竞赛”。从模型框架…

LintCode 1671. 玩游戏(贪心、难)

1. 题目 N 个人在玩游戏&#xff0c;每局游戏有一个裁判和 N-1 个平民玩家。给出一个数组 A, A[i] 代表玩家 i 至少需要成为平民 A[i] 次&#xff0c;返回最少进行游戏的次数。 样例 1: 输入&#xff1a;A [2, 2, 2, 2] 输出&#xff1a;3 解析&#xff1a; A[0] 2表示玩家…

美团点评基于 Flink 的实时数仓建设实践

引言 近些年&#xff0c;企业对数据服务实时化服务的需求日益增多。本文整理了常见实时数据组件的性能特点和适用场景&#xff0c;介绍了美团如何通过 Flink 引擎构建实时数据仓库&#xff0c;从而提供高效、稳健的实时数据服务。此前我们美团技术博客发布过一篇文章《流计算框…

机器翻译做到头了?Meta开源NLLB翻译模型,支持200种语言互译

文 | Alex(凹非寺)源 | 量子位这个翻译模型&#xff0c;不仅支持200语言之间任意两两互译&#xff0c;还是开源的。Meta AI在发布开源大型预训练模型OPT之后&#xff0c;再次发布最新成果NLLB。NLLB的全称为No Language Left Behind&#xff0c;如果套用某著名电影&#xff0c;…

LintCode 1652. 区间异或 II

1. 题目 给定数组 A&#xff08;下标从0到n-1&#xff0c;n为数组长度&#xff09;&#xff0c;和一个查询列表。 每一项查询包括两个整数 i 和 k。 对于每次查询&#xff0c;计算Ai, A(i  1), ..., A(ik-1)的异或值。结果保存在列表中。 样例1 输入: A [1,2,3,4] and …

美团外卖Android平台化的复用实践

美团外卖平台化复用主要是指多端代码复用&#xff0c;正如美团外卖iOS多端复用的推动、支撑与思考文章所述&#xff0c;多端包含有两层意思&#xff1a;其一是相同业务的多入口&#xff0c;指美团外卖业务需要在美团外卖App&#xff08;下文简称外卖App&#xff09;和美团App外…

智源承认论文抄袭,相关责任人已离职!

文 | 金磊Alex(凹非寺)源 | 量子位“2处属于抄袭&#xff0c;4处引用不规范。”“相关责任人均已主动离职。”“大模型研究中心部门重组。”……一篇名为A Roadmap for Big Model、由百人联合完成的综述报告&#xff0c;因涉嫌抄袭在国内外学术圈引发了不小的关注。对此&#x…

LintCode 1689. k求和III(递归)

1. 题目 给出 n 个正整数和整数 k 以及一个目标数字 target. 在 n 个数中找出 k 个奇数 或 k 个偶数 使得和为target&#xff0c;输出方案数 样例 1: 给出 [1,2,3,4], k 2,target 4, 返回 1 输入: [1,2,3,4] 2 4 输出: 1 解释: 只有一个方案&#xff1a;[1,3].样例 2: 给…

美团扫码付小程序的优化实践

短短几年的时间&#xff0c;微信小程序已经从一颗小小的萌芽成长为参天大树&#xff0c;形成了较大规模的开发者生态系统&#xff0c;尤其是在支付、线下垂直领域潜力巨大。 作为领先的生活服务平台&#xff0c;美团的技术团队在小程序领域也进行了很多的探索和实践。像mpvue就…

谈谈算法岗简历优化与面试技巧!

秋招已经开始&#xff0c;许多同学都在为简历和面试发愁。我跟BAT某lab高级算法研究员、担任过多次技术面试官的Sunny师兄聊了聊&#xff0c;跟他请教了简历撰写和面试准备的方法。重磅福利在文末↓Sunny 目前在BAT某lab担任高级算法研究员&#xff0c;有多年的简历筛选和面试经…

LintCode 386. 最多有k个不同字符的最长子字符串(双指针)

1. 题目 给定字符串S&#xff0c;找到最多有k个不同字符的最长子串T。 样例 1: 输入: S "eceba" 并且 k 3 输出: 4 解释: T "eceb"样例 2: 输入: S "WORLD" 并且 k 4 输出: 4 解释: T "WORL" 或 "ORLD"挑战 O(n) 时…

院士发声:科研人也要养家,非升即走只能做短平快的研究

源 | 募格课堂综合自上游新闻、澎湃新闻、百度百科如今&#xff0c;59岁的中国科学院院士马大为&#xff0c;他也感慨科技界的“内卷”&#xff0c;“很多大学和研究单位没有按照科研的规律招PI&#xff08;Principal Investigator&#xff0c;学术带头人、首席研究员&#xff…

镣铐之舞:美团安全工程师Black Hat USA演讲

背景 2018年8月9日&#xff0c;全球顶级安全会议——Black Hat USA在美国拉斯维加斯的曼德勒海湾会议中心落下了帷幕&#xff0c;这场盛会在全球黑客心中几乎等同于“世界杯”和“奥斯卡”一样的存在。这场一年一度的盛会已经有着21年的悠久历史&#xff0c;也被公认为世界信息…

LintCode 550. 最常使用的K个单词II(自定义set(可修改数据的优先队列) + map)

1. 题目 在实时数据流中找到最常使用的k个单词. 实现TopK类中的三个方法: TopK(k), 构造方法add(word), 增加一个新单词topk(), 得到当前最常使用的k个单词. 样例 1: 输入&#xff1a; TopK(2) add("lint") add("code") add("code") topk() 输…

Pix2Seq:谷歌大脑提出 CV 任务统一接口!

文 | 青豆最近一个大趋势就是将各类任务统一在一个大一统框架下。大规模预训练语言模型已成功打通各类文本任务&#xff0c;使得不同的NLP任务上&#xff0c;都可以用这种统一的sequence生成框架作为基础模型&#xff0c;只需要通过prompt的方式&#xff0c;指导模型生成目标结…

美团针对Redis Rehash机制的探索和实践

背景 Squirrel&#xff08;松鼠&#xff09;是美团技术团队基于Redis Cluster打造的缓存系统。经过不断的迭代研发&#xff0c;目前已形成一整套自动化运维体系&#xff1a;涵盖一键运维集群、细粒度的监控、支持自动扩缩容以及热点Key监控等完整的解决方案。同时服务端通过Doc…

剑指Offer - 面试题59 - II. 队列的最大值(deque模拟单调栈)

1. 题目 请定义一个队列并实现函数 max_value 得到队列里的最大值&#xff0c;要求函数max_value、push_back 和 pop_front 的时间复杂度都是O(1)。 若队列为空&#xff0c;pop_front 和 max_value 需要返回 -1 示例 1&#xff1a; 输入: ["MaxQueue","push…