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

Python二叉树遍历算法

# 定义一棵树结构
class Tree:def __init__(self, value):self.value = valueself.left = Noneself.right = Nonedef zhong(tree, array=[]):"""中序遍历:param tree: :param array: :return: """if tree is None:return arrayzhong(tree.left, array)array.append(tree.value)zhong(tree.right, array)return arraydef pre(tree, array=[]):"""前序遍历:param tree: :param array: :return: """if tree is None:return arrayarray.append(tree.value)pre(tree.left, array)pre(tree.right, array)return arraydef behind(tree, array=[]):"""后序遍历:param tree: :param array: :return: """if tree is None:return arraybehind(tree.left, array)behind(tree.right, array)array.append(tree.value)return array# 按照给出的树,构建树形结构
tree = Tree(10)
tree.left = Tree(5)
tree.right = Tree(15)
tree.left.left = Tree(2)
tree.left.right = Tree(5)
tree.left.left.left = Tree(1)
tree.right.right = Tree(22)print(zhong(tree, []))
print(behind(tree, []))
print(pre(tree, []))

参考视频:https://www.bilibili.com/video/BV1Ev411i7Rk/?spm_id_from=333.337.search-card.all.click&vd_source=30aff718c4a81a6d17f211397fc39bb7

相关文章:

  • 防御恶意爬虫攻击
  • 学习Java的日子 Day49 函数,DOM
  • aws glue配置读取本地kafka数据源
  • 【Linux】关于获取进程退出状态中的core dump标志补充
  • Google Earth Engine(GEE)深度学习入门教程-Python数据读入篇
  • npm build报错Cannot find module ‘html-webpack-plugin‘解决方法
  • 设计模式—23种设计模式重点 表格梳理
  • cherry-markdown公式不好选中的问题
  • 国产PS插件新选择;StartAI平替中的佼佼者!
  • 微软的野望:下一代操作系统
  • 软考结束。有什么要说的
  • 关于Profinet远程IO模块的超详细讲解
  • 前端 JS 经典:构建工具
  • Java 编程入门:从零开始
  • linux学习(六)
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • Angular Elements 及其运作原理
  • centos安装java运行环境jdk+tomcat
  • iOS 颜色设置看我就够了
  • JAVA 学习IO流
  • JavaScript标准库系列——Math对象和Date对象(二)
  • java多线程
  • Java多线程(4):使用线程池执行定时任务
  • JS基础之数据类型、对象、原型、原型链、继承
  • js正则,这点儿就够用了
  • Linux Process Manage
  • ReactNative开发常用的三方模块
  • Traffic-Sign Detection and Classification in the Wild 论文笔记
  • Travix是如何部署应用程序到Kubernetes上的
  • 聚簇索引和非聚簇索引
  • 普通函数和构造函数的区别
  • 扫描识别控件Dynamic Web TWAIN v12.2发布,改进SSL证书
  • 听说你叫Java(二)–Servlet请求
  • 网页视频流m3u8/ts视频下载
  • 白色的风信子
  • Java数据解析之JSON
  • 东超科技获得千万级Pre-A轮融资,投资方为中科创星 ...
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • # Swust 12th acm 邀请赛# [ K ] 三角形判定 [题解]
  • (23)Linux的软硬连接
  • (STM32笔记)九、RCC时钟树与时钟 第二部分
  • (第9篇)大数据的的超级应用——数据挖掘-推荐系统
  • (分布式缓存)Redis哨兵
  • (四)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)
  • (四)软件性能测试
  • (已解决)什么是vue导航守卫
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • (转载)Linux网络编程入门
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .bat批处理(九):替换带有等号=的字符串的子串
  • .MyFile@waifu.club.wis.mkp勒索病毒数据怎么处理|数据解密恢复
  • .net core Swagger 过滤部分Api
  • .NET MAUI Sqlite程序应用-数据库配置(一)
  • .net 调用海康SDK以及常见的坑解释
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。