Leetcode114将二叉树转换为链表(java实现)

embedded/2024/9/25 2:31:49/

来看下本题的题目描述:
在这里插入图片描述
本题想让我们将二叉树转换为单链表,可以发现,左边的二叉树转换为右边的链表是使用的中序遍历,根 左 右
所以本道题的思路就是可以先用一个集合以中序遍历收集元素,然后再构建单链表

java">class Solution {List<TreeNode> res = new ArrayList();public void flatten(TreeNode root) { calc(root);//这里i从1开始 需要特别注意for(int i = 1;i<res.size();i++){//新建头结点,开始构建链表;只取右子树TreeNode head  = res.get(i-1);TreeNode cur = res.get(i);head.right=cur;head.left=null;} }public void calc(TreeNode node ){if(node ==null)return;res.add(node);calc(node.left);calc(node.right);}
}

http://www.ppmy.cn/embedded/104381.html

相关文章

集成电路学习:什么是FPGA现场可编程门阵列

一、FPGA&#xff1a;现场可编程门阵列 FPGA&#xff0c;全称Field Programmable Gate Array&#xff0c;即现场可编程门阵列&#xff0c;是一种超大规模可编程逻辑器件。它由可编程逻辑资源、可编程互连资源和可编程输入输出资源组成&#xff0c;主要用于实现以状态机为主要特…

B+树的原理及实现

B树的原理及实现 一、引言 B树是一种基于B树的树形数据结构&#xff0c;它在数据库和文件系统的索引中有着广泛的应用。与B树相比&#xff0c;B树的所有数据记录都存储在叶节点上&#xff0c;并且增加了顺序访问的能力&#xff0c;这使得B树在处理大量数据时更加高效。 二、…

IDEA常用快捷键大全

前言 快捷键真的大大提高效率啊&#xff0c;本篇总结了常用的快捷键&#xff0c;按照功能和快捷键组合分类&#xff0c;根据每个人不同情况&#xff0c;各取所需 推荐一个插件&#xff0c;【Key Promoter X】&#xff0c;在你用鼠标点点点时&#xff0c;会提醒你可以用对应的快…

安达发|户外设备制造APS排程的多层级BOM订单拉动

户外设备制造行业面临的挑战包括多样化的产品线、复杂的产品开发过程以及市场需求的快速变化。为提高生产效率与市场响应速度&#xff0c;采用高级计划排程的多层级BOM订单拉动策略至关重要。 一、户外设备制造行业概述 - 行业背景&#xff1a;户外设备制造行业主要涉及户外休…

使用Ansible stat模块检查目录是否存在

使用Ansible stat模块检查目录是否存在或者是否为一个目录还是文件 理论知识 在Ansible中&#xff0c;你可以使用stat模块来检查一个目录是否存在。stat模块可以用来获取文件或目录的状态信息&#xff0c;包括它是否存在。下面是一个简单的例子&#xff0c;说明如何使用stat模…

智慧猪场实训中心解决方案

一、引言 随着科技的飞速发展&#xff0c;传统养猪业正经历着前所未有的变革。为了提高养猪效率、降低生产成本并保障猪只健康&#xff0c;智慧养猪场的概念应运而生。唯众特此推出《智慧猪场实训中心解决方案》&#xff0c;旨在通过先进的技术与管理手段&#xff0c;为养猪业培…

使用mime/multipart上传文件报错:multipart: NextPart: EOF

go版本&#xff1a; go1.22.2 server文件&#xff1a; package mainimport ("fmt""io""net/http""os""time" )func main() {http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {w.Write([]by…

Jenkins安装使用详解,jenkins实现企业级CICD流程

文章目录 一、资料1、官方文档 二、环境准备1、安装jdk172、安装maven3、安装git4、安装gitlab5、准备我们的springboot项目6、安装jenkins7、安装docker8、安装k8s&#xff08;可选&#xff0c;部署节点&#xff09;9、安装Harbor10、准备带有jdk环境的基础镜像 三、jenkins实…