算法题:二叉树遍历总结
1.题目要求对比总结二叉树三种遍历方式递归方式 和 非递归方式2.Python实现2.1 先序遍历题目LeetCode 144. 二叉树的前序遍历解答先输出根节点根 → 左 → 右# Definition for a binary tree node.# class TreeNode:# def __init__(self, val0, leftNone, rightNone):# self.val val# self.left left# self.right rightclassSolution:defpreorderTraversal(self,root:Optional[TreeNode])-List[int]:res[]defdfs(root):ifnotroot:returnres.append(root.val)dfs(root.left)dfs(root.right)dfs(root)returnresclassSolution:defpreorderTraversal(self,root:Optional[TreeNode])-List[int]:ifnotroot:return[]res,stack[],[root]whilestack:nodestack.pop()res.append(node.val)# 和后序区别先右、后左入栈ifnode.right:# 特别注意的地方stack.append(node.right)ifnode.left:stack.append(node.left)returnres2.2 中序遍历题目LeetCode 94. 二叉树的中序遍历解答中间输出根节点左 → 根 → 右classSolution:definorderTraversal(self,root:Optional[TreeNode])-List[int]:res[]defdfs(root):ifnotroot:returndfs(root.left)res.append(root.val)dfs(root.right)dfs(root)returnresclassSolution:definorderTraversal(self,root:Optional[TreeNode])-List[int]:res[]stack[]currootwhilecurorstack:whilecur:# 1. 不断向左走节点全部入栈stack.append(cur)curcur.left curstack.pop()# 2. 左走到尽头弹出栈顶节点并访问res.append(cur.val)curcur.right# 3. 转向右子树继续遍历returnres2.3 后续序遍历题目LeetCode 145. 二叉树的后序遍历解答最后输出根节点左 → 右 → 根classSolution:defpostorderTraversal(self,root:Optional[TreeNode])-List[int]:res[]defdfs(root):ifnotroot:returndfs(root.left)dfs(root.right)res.append(root.val)dfs(root)returnresclassSolution:defpostorderTraversal(self,root:Optional[TreeNode])-List[int]:ifnotroot:return[]res,stack[],[root]whilestack:nodestack.pop()res.append(node.val)ifnode.left:# 特别注意的地方stack.append(node.left)ifnode.right:stack.append(node.right)returnres[::-1]

相关新闻

2026标签打印软件排行榜出炉,这五款高效工具值得收藏

2026标签打印软件排行榜出炉,这五款高效工具值得收藏

当智能制造的进程踏入2026年,每一张流转于产线、库房与物流环节的标签,早已不再是简单的耗材。它承载着合规溯源的刚性需求,也揭示着企业数字化底座的协作能力。然而,一份行业调研揭示出典型的断裂:约有近七成的企业仍…

2026/8/4 10:57:09 阅读更多 →
FigmaCN终极指南:3步快速实现Figma界面中文化,提升设计效率

FigmaCN终极指南:3步快速实现Figma界面中文化,提升设计效率

FigmaCN终极指南:3步快速实现Figma界面中文化,提升设计效率 【免费下载链接】figmaCN 中文 Figma 插件,设计师人工翻译校验 项目地址: https://gitcode.com/gh_mirrors/fi/figmaCN 还在为Figma的英文界面而烦恼吗?面对复杂…

2026/8/4 10:57:09 阅读更多 →
毛利率分析,一定要拆到价格、成本和产品结构

毛利率分析,一定要拆到价格、成本和产品结构

很多企业做毛利率分析,通常只看三个数字:本月毛利率是多少、比预算低多少、比去年同期下降多少。发现毛利率下滑后,原因也很快被归纳为:“市场竞争激烈,产品降价了。”“原材料价格上涨,成本增加了。”“低…

2026/8/4 10:57:09 阅读更多 →

最新新闻

DMA与AI算力盒子:从数据传输到边缘AI推理的技术本质与协作关系

DMA与AI算力盒子:从数据传输到边缘AI推理的技术本质与协作关系

最近在嵌入式开发和边缘AI领域,一个名为“AI算力盒子”的概念开始频繁出现。它常被描述为一种集成了专用AI处理单元(NPU)的嵌入式设备,能够高效地执行图像识别、语音处理等AI推理任务。与此同时,一个经典的技术名词——…

2026/8/4 11:44:38 阅读更多 →
React组件通信:核心方案与性能优化实践

React组件通信:核心方案与性能优化实践

1. React组件通信的核心价值与场景定位在React应用开发中,组件通信如同城市地下管网系统——虽然用户看不见,但决定了整个应用的运转效率。我经历过多个中大型React项目后深刻体会到:合理的通信方案选择能让组件协作效率提升300%以上&#xf…

2026/8/4 11:44:38 阅读更多 →
PDF空白页批量删除:高效自动化解决方案

PDF空白页批量删除:高效自动化解决方案

1. 项目概述:PDF空白页批量删除的痛点与解决方案每次处理上百页的扫描版PDF文档时,最让人抓狂的就是那些意外混入的空白页。它们可能来自扫描仪的双面进纸错误、文档拼接时的格式错位,或是电子转换过程中的排版异常。传统方法需要手动一页页检…

2026/8/4 11:44:38 阅读更多 →
题解:洛谷 P1470 [USACO2.3] 最长前缀 Longest Prefix

题解:洛谷 P1470 [USACO2.3] 最长前缀 Longest Prefix

本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。 欢迎大…

2026/8/4 11:44:38 阅读更多 →
食品检测实验室LIMS数字化升级实战

食品检测实验室LIMS数字化升级实战

食品检测实验室的数字化升级:从五个痛点看 LIMS 如何真正落地最近几年,食品检测实验室的日子并不轻松。 一方面,监管要求持续收紧——食品安全抽检频次逐年增加,GB 2763《食品中农药最大残留限量》、GB 2762《食品中污染物限量》等…

2026/8/4 11:44:38 阅读更多 →
木质也能做防火门?很多人都不知道

木质也能做防火门?很多人都不知道

多数人存在认知误区,认为防火门只能采用钢制材质,实际上符合国标要求的木质防火门早已广泛应用,依据 GB12955-2024,木质防火门属于正规被动防火构件,大量使用于酒店、写字楼、住宅精装区域。木质防火门并非普通实木门简…

2026/8/4 11:43:38 阅读更多 →

日新闻

AI Agent白手起家26: 使用标准事件驱动大模型实践

AI Agent白手起家26: 使用标准事件驱动大模型实践

纲要 练习目标:掌握大模型标准事件的调用回顾 LangChain 中的核心标准事件 invokestreambatchastream_eventswith_structured_output 环境准备实战代码:多种事件调用对比 同步调用与流式输出批量处理异步事件流监听结构化输出 运行说明与预期结果总结与扩…

2026/8/4 0:00:40 阅读更多 →
dealsea是什么?跨境卖家必知的美国deal站入门指南

dealsea是什么?跨境卖家必知的美国deal站入门指南

说实话,第一次听说美国这个老牌折扣网站的跨境卖家,十个有八个会问同一个问题:这个平台到底是干嘛的?我见过一个做家居出口的朋友,他在亚马逊上月销二十万美金,却从来没用过它。我给他看了首页——一屏一屏…

2026/8/4 0:01:40 阅读更多 →
清华大学重磅EST:植物自导电闪蒸焦耳热600°C/2600°C两步法!稀土超积累植物秒级转化为CeO₂-石墨烯电催化剂!

清华大学重磅EST:植物自导电闪蒸焦耳热600°C/2600°C两步法!稀土超积累植物秒级转化为CeO₂-石墨烯电催化剂!

通讯作者:邓兵、刘建国通讯单位:清华大学DOI:https://doi.org/10.1021/acs.est.6c00603研究背景稀土元素(REEs)是清洁能源技术与电子器件不可或缺的核心原料,然而传统提取方式依赖能耗高、排放大的采矿与强…

2026/8/4 0:01:40 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/3 4:58:13 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/4 11:41:39 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/4 5:26:40 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/3 13:07:03 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/4 11:09:16 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/3 8:27:36 阅读更多 →