当前位置: 首页 > web >正文

面试150 二叉树展开为链表

在这里插入图片描述

思路

思路:使用列表存储先序遍历的相关节点。然后遍历列表,分别获取前驱节点和当前节点,将前驱节点的左指针指向空,前驱节点的右指针指向当前节点。

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:def flatten(self, root: Optional[TreeNode]) -> None:"""Do not return anything, modify root in-place instead."""#先序遍历 root.left root.rightres=[]def preorder(node):if not node:return res.append(node)preorder(node.left)preorder(node.right)preorder(root)for i in range(1,len(res)):pre,cur=res[i-1],res[i]pre.left=Nonepre.right=cur
http://www.xdnf.cn/news/15408.html

相关文章:

  • Redis面试精讲 Day 2:Redis数据类型全解析
  • 【操作系统-Day 5】通往内核的唯一桥梁:系统调用 (System Call)
  • 【DVWA系列】——File Upload——low详细教程(webshell工具冰蝎)
  • MySQL SQL语句精要:DDL、DML与DCL的深度探究
  • ROS2---NodeOptions
  • 01.深入理解 Python 中的 if __name__ == “__main__“
  • vue是什么
  • 【PyMuPDF】PDF图片处理过程内存优化分析
  • 基于Prompt结构的语校解析:3H日本语学校信息建模实录(4/500)
  • idea docker插件连接docker失败
  • 文心大模型4.5开源测评:轻量化部署实践与多维度能力验证
  • TASK2 夏令营:用AI做带货视频评论分析
  • 电路分析基础(01)
  • C#接口进阶:继承与多态实战解析
  • FusionOne HCI 23 超融合实施手册(超聚变超融合)
  • ConcurrentHashMap笔记
  • Docker Compose文件内容解释
  • jdk1.8 nio相关。java对象和epoll三大函数怎么关联的?(有点乱有点跳)
  • Redis技术笔记-从三大缓存问题到高可用集群落地实战
  • 【计算机网络架构】环型架构简介
  • 【保姆级图文详解】Spring AI 中的工具调用原理解析,工具开发:文件操作、联网搜索、网页抓取、资源下载、PDF生成、工具集中注册
  • DETRs与协同混合作业训练之CO-DETR论文阅读
  • spring--@Autowired
  • Wireshark的安装和基本使用
  • 第七章 算法题
  • Docker从环境配置到应用上云的极简路径
  • 【micro:bit】从入门到放弃(一):在线、离线版本的使用
  • 第三章-提示词-探秘大语言基础模型:认知、分类与前沿洞察(9/36)
  • C++:宏
  • 从零开始学习深度学习-水果分类之PyQt5App