LeetCode109-20.8.18-有序链表转二叉搜索树

LeetCode 面试经典 150 题回顾 最经典 150 题,掌握面试所有知识点 面试经典 150 题 : 题目分析、解题思路、复杂度分析、代码展示 阅读详情

题目链接:LeetCode109
过程:一开始想直接写二叉搜索树,一个节点一个节点的插入树中,但感觉好麻烦而且不会。索性去看题解。(我太呆了 )题解真好。
做法:分治,评论里有位bfs建树,dfs中序遍历填值感觉可以。
代码:

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */

class Solution {
    ListNode globalNode;
    public TreeNode sortedListToBST(ListNode head) {
        int len=0;
        for(ListNode node=head;node!=null;node=node.next)len++;
        globalNode=head;
        return buildTree(0,len-1);
           
    }
    public TreeNode buildTree(int left,int right){
        if(left>right)return null;
        int mid=(left+right+1)/2;
        TreeNode node=new TreeNode();
        node.left=buildTree(left,mid-1);
        node.val=globalNode.val;
        globalNode=globalNode.next;
        node.right=buildTree(mid+1,right);
        return node;
    }
    
}
LabVIEW数据采集-数字I/O/计数器 labview 数据采集 数字I/O 计数器 阅读详情

相关推荐

AXI4接口说明

ACLK:全局AXI接口时钟输入(建议与系统时钟保持一致)ARESET_n:全局AXI接口复位信号,低电平有效。PS:在HBM AXI接口应用中,此复位端口仅应在数据传输开始前使用。若在传输开始后使用,会导致AXI接口与内存控制器失步(out-of-sync)。当开关启用时,IP核会将所有ARESET_n引脚内部连接在一起——因为内存作为一个整体工作。

rhtul的博客 1522

leetcode *109. 有序链表转换二叉搜索树(2020.8.18)

【题目】*109. 有序链表转换二叉搜索树 给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。 示例: 给定的有序链表: [-10, -3, 0, 5, 9], 一个可能的答案是:[0, -3, 9, -10, null, 5], 它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3 9 / / -10 5 【解题思路1】分治 将给定的有序链

Sophia_fez的博客 355

OpenNARS开源通用人工智能系统:非公理推理引擎实践指南

人工智能系统从基于规则推理到深度学习模型,始终围绕如何让机器具备智能决策能力。传统逻辑系统依赖公理和完备知识,而现实世界智能体需要在资源受限、信息不完备环境下进行推理。非公理推理系统(NARS)通过动态真值计算和信念修正机制,实现了在不确定性环境下的自主学习和决策。这种推理引擎的技术价值在于模拟人类思维的核心机制——归纳、演绎和学习,为通用人工智能(AGI)提供了不同于数据驱动的新路径。在应用场景上,NARS适用于游戏NPC决策、复杂系统故障诊断和自适应机器人控制等领域。OpenNARS作为NARS理论的开

weixin_31961675的博客 408

[leetcode每日一题2020/8/18]109. 有序链表转换二叉搜索树

有序链表转换二叉搜索树题目思路代码分治+先序遍历分治+中序遍历算法复杂度 题目来源于leetcode,解法和思路仅代表个人观点。传送门。 难度:中等 用时:忘了,应该不是很久,一开始还没想到【中序遍历】 题目 给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。 示例: 给定的有序链表: [-10, -3, 0, 5, 9], 一个可能的答案是:[0, -3, 9, -10, null, 5

LittleSeedling的博客 250

【STM32】从零构建串口IAP框架:BootLoader与App双向跳转实战解析

本文详细解析了STM32串口IAP框架的构建,重点阐述了BootLoader与App双向跳转的实战原理与实现步骤。内容涵盖Flash分区规划、中断向量表重定向、通信协议设计及固件升级流程,并针对跳转失败、程序跑飞等常见问题提供了解决方案,帮助开发者掌握产品级远程升级的核心技术。

wind6的博客 838

Python爬虫实战:从巨潮资讯网高效获取结构化JSON数据

在数据采集与处理领域,网络爬虫是实现自动化信息获取的核心技术。其基本原理是通过模拟浏览器行为,向目标服务器发送HTTP请求并解析响应内容,从而提取所需数据。相较于传统的网页解析,直接获取结构化数据(如JSON格式)能极大提升数据处理的效率与准确性,避免了复杂的HTML解析或PDF文本提取过程。这一技术价值在金融数据分析、市场研究、舆情监控等场景中尤为突出,能够快速构建高质量的数据集。本文以Python爬虫为例,聚焦于从巨潮资讯网这类官方信息披露平台,精准定位并抓取JSON格式的上市公司年报数据,详细阐述了接

weixin_29243279的博客 1418

Leetcode: NO.109 有序链表转换二叉搜索树 快慢指针

题目 给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。 示例: 给定的有序链表: [-10, -3, 0, 5, 9], 一个可能的答案是:[0, -3, 9, -10, null, 5], 它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3 9 / / -10 5 链接:https://leetcode-cn.com/problem

泛泛之素 531

空心杯电机在美容仪器中的应用:为什么你的洗脸刷动力这么强?

本文深入解析了空心杯电机如何成为高端美容仪器的核心动力源。通过对比传统电机,揭示了其无铁芯、低惯量、零齿槽效应的技术优势,从而实现了强劲动力、极致静音与细腻震动的用户体验。文章详细阐述了空心杯电机在洁面刷、导入仪等美容仪器中的具体应用与选型考量,并指出了开发中驱动匹配、测试等关键实战要点。

j2k3l4的博客 1013

leetcode_109_有序链表转平衡二叉树_二分法

这几天的题目都不难,所以几天没记录博客2333333333。这个题目难度中等,想到了就比较简单。。。 题目: 给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。 本题中,一个高度平衡二叉树是指一个二叉树每个节点的左右两个子树的高度差的绝对值不超过 1。 示例: 给定的有序链表: [-10, -3, 0, 5, 9], 一个可能的答案是:[0, -3, 9, -10, null, 5], 它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3 ...

台风天赋的博客 275

ubuntu 24.04安装ros1 noetic

上面是参考链接给的修改内容。除了上面要修改的地方,我在编译的生活还有一个地方报错,修改成如下形式。因为我已经对文件rosconsole_log4cxx.cpp作了上面的修改,所有是不是188行不太确认了,如果报“log4cxx::spi::LocationInfo”问题,按照下面修改就可以了。我在编译时还报了一个问题,就是我之前安装的是jazzy。所以在编译时会报ros变量名不对,这时对变量名做修改就可以了。具体怎么修改,百度。a、将源文件中所有CMakelist中编译标准改为c++ 17.

yangpan011的博客 3202

Windows Server 搭建ftp服务

Windows Server 搭建ftp服务

ch258563的博客 1010

力扣---2020.8.18

109. 有序链表转换二叉搜索树 class Solution { public TreeNode sortedListToBST(ListNode head) { // 快慢指针找到链表的中点,中点作为根结点,两边作为左右子树 if(head == null) return null; if(head.next == null) return new TreeNode(head.val); // 快慢指针找中间结点 L

Carroll的博客 276

【生信分析】clusterProfiler: universal enrichment tool for functional and comparative study(1)

clusterProfiler: universal enrichment tool for functional and comparative studyClusterProfiler: 用于功能和比较研究的通用富集工具总览1. 引言1.1 术语1.1.1 基因集和通路1.1.2 基因同源(GO)1.1.3 京都基因与基因组百科全书(KEGG)1.1.4 其他基因集2. 功能富集分析方法2.1 过度表征分析(Over Representation Analysis)2.2 基因集富集分析(Gene Se

小哲的博客 1365

LeetCode --- 109. Convert Sorted List to Binary Search Tree

题目链接:Convert Sorted List to Binary Search Tree Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST. 这道题的要求是将有序链表转化成高度平衡的二叉搜索树(BST)。 1. 利

makuiyu的专栏 2238

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

LeetCode(109):有序链表转换二叉搜索树

Medium! 题目描述: 给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。 本题中,一个高度平衡二叉树是指一个二叉树每个节点的左右两个子树的高度差的绝对值不超过 1。 示例: 给定的有序链表: [-10, -3, 0, 5, 9], 一个可能的答案是:[0, -3, 9, -10, null, 5], 它可以表示下面这个高度平衡二叉搜索树: ...

weixin_30794499的博客 151

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

LeetCode刷题汇总

剑指offer 剑指 Offer 03 数组中重复的数字 剑指 Offer 04 二维数组中的查找 剑指 Offer 05 替换空格 剑指 Offer 06 从尾到头打印链表 剑指 Offer 07 重建二叉树 剑指 Offer 09 用两个栈实现队列 剑指 Offer 10- I 斐波那契数列 剑指 Offer 10- II 青蛙跳台阶问题 剑指 Offer 11 旋转数组的最小数字 剑指 Offer 12 矩阵中的路径 剑指 Offer 13 机器人的运动范围 剑指 Offer 14- I 剪绳子 剑指

weixin_44171872的博客 2万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

ESP32 MCP开发避坑:DoToolCall返回true不等于硬件动作完成

MCP协议作为AI模型调用外部工具的标准接口,其工具函数返回值仅表示请求已被接收和解析,并不保证硬件动作已执行。在ESP32嵌入式开发中,SetOutputVolume等硬件操作通过ESP-IDF的异步管道执行,从函数调用到喇叭实际出声存在DMA缓冲和编解码芯片带来的延迟。若DoToolCall直接返回true,AI可能误判动作已完成并继续下发指令,导致状态不一致。理解MCP调用模型与ESP-IDF异步执行机制,是构建可靠AI Agent硬件控制的关键。

weixin_30824479的博客 286

Leetcode记录库数据结构篇之二:树

Leetcode记录库数据结构篇之二:树简介题目二、树结论1 104. 二叉树的最大深度2 110. 平衡二叉树3 543. 二叉树的直径4 226. 翻转二叉树5 617. 合并二叉树6 112. 路径总和7 437. 路径总和 III8 572. 另一棵树的子树简介题目 简介 每道题的记录分为以下几个部分: 题目 题目 思路描述 思路描述 代码实现 java代码: 注意事项 注意事项 拓展延伸 拓展延伸 二、树 结论 1.树是递归定义的数据结构,所以大部分有关树的问题使用递归会比较容易

NotLency的博客 353

【LeetCode】题解合集(JavaScript版)

LeetCode题解合集

公众号:前端充电宝 2965

109. Convert Sorted List to Binary Search Tree

https://leetcode.com/problems/convert-sorted-list-to-binary-search-tree/discuss/35476/Share-my-JAVA-solution-1ms-very-short-and-concise. 1 class Solution { 2 public TreeNode sortedLi...

diegouyi3472的博客 71

力扣300未加锁&&剑指offer&&力扣hot100不会的题

力扣300&&剑指offer好题 二分查找.

weixin_38199770的博客 354

力扣相似题目汇总

按类别汇总

wish9968的博客 1234

LeetCode(1-200)

CodeTopLeetCode 206. 反转链表补充题4. 手撕快速排序AcWing 786. 第k个数补充题6. 手撕堆排序LeetCode 215. 数组中的第K个最大元素 LeetCode 206. 反转链表 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {

HENRYyangtuo的博客 1198

leetcode刷题汇总

文章目录1 两数之和2 两数相加(链表)([回到目录](#目录))3 无重复字符的最长子串([回到目录](#目录))4 两个排序数组的中位数5 最长回文子串([回到目录](#目录))6 Z字形变换([回到目录](#目录))7 反转整数8 字符串转整数 (atoi)([回到目录](#目录))9 回文数10. 正则表达式匹配([回到目录](#目录))11 盛水([回到目录](#目录))12 整数转换成...

winper001的博客 1万+

【Leetcode | 02】二叉树、线性表目录

二叉树 序号 题号 1 94. 二叉树的中序遍历 2 95. 不同的二叉搜索树 II 3 96. 不同的二叉搜索树 4 98. 验证二叉搜索树 5 100. 相同的树 6 101. 对称二叉树 7 102. 二叉树的层次遍历 8 103. 二叉树的锯齿形层次遍历 9 1...

月雲之霄的博客 402

LeetCode【做题】

目录1.LeetCode:349. 两个数组的交集 ————————————————————————————————— 1.LeetCode:349. 两个数组的交集 时间:20200426 题目 给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2] 示例 2: 输入: nums1 = [4,9,5],...

Doraemon_Zzn的博客 1626
上一篇: LeetCode110-20.8.17-平衡二叉树
下一篇: LeetCode647-20.8.19-回文字串
RedDevill
博客等级 码龄8年 2粉丝 54原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值