基于python二叉树的构造和打印例子

作者:请叫我算术嘉 时间:2023-05-16 15:35:45 

写在最前面:

带你从最简单的二叉树构造开始,深入理解二叉树的数据结构,ps:不会数据结构的程序猿只能是三流的

首先,我们构造一个二叉树

这是最标准,也是最简单的二叉树构造方法


'''
树的构建:
  3
9   20
  15  7
'''

class Tree():
 '树的实现'
 def __init__(self,data,left = 0,right = 0):
   self.left = left
   self.right = right
   self.data = data

def __str__(self):
   return str(self.data)
# test tree

tree1 = Tree(data=15)
tree2 = Tree(data=7)
tree3 = Tree(20,tree1,tree2)
tree4 = Tree(data=9)
base = Tree(3,tree4,tree3)

这里我们需要定义二叉树的根,左右节点,然后构造节点之间的关系

打印二叉树函数


def function(root):
 A = []
 result = []
 if not root:
   return result
 A.append(root)
 while A:
   current_root = A.pop(0)
   result.append(current_root.data)
   if current_root.left:
     A.append(current_root.left)
   if current_root.right:
     A.append(current_root.right)
 print(result)
 return result

调用函数以及放入构造好的二叉树


function(base)

输出如下:


[3, 9, 20, 15, 7]

Process finished with exit code 0

最近事情实在是太多,真的是每天人都很累,还是坚持每天更新一点,已经快要强迫症了。

来源:https://blog.csdn.net/ssjdoudou/article/details/83692895

标签:python,二叉树,构造,打印
0
投稿

猜你喜欢

  • Python pymongo模块用法示例

    2022-05-23 20:00:21
  • Python使用自带的ConfigParser模块读写ini配置文件

    2022-04-01 00:07:01
  • python实现动态规划算法的示例代码

    2023-03-03 09:43:22
  • Python常用的内置序列结构(列表、元组、字典)学习笔记

    2021-02-18 21:25:45
  • Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)

    2024-05-03 15:13:30
  • Python实现在线批量美颜功能过程解析

    2023-10-27 10:38:34
  • 一篇文章带你了解python标准库--sys模块

    2022-04-25 10:21:37
  • python操作excel之xlwt与xlrd

    2023-02-11 08:05:52
  • Python实现类似jQuery使用中的链式调用的示例

    2021-09-20 00:16:55
  • Python识别html主要文本框过程解析

    2023-11-09 01:31:52
  • HTTP请求 GET与POST方法的区别

    2023-07-26 12:46:35
  • Python配置虚拟环境图文步骤

    2023-10-13 01:37:40
  • Golang解析JSON遇到的坑及解决方法

    2024-05-10 13:58:29
  • MySQL备份与恢复之热备(3)

    2024-01-21 04:50:04
  • 解决django model修改添加字段报错的问题

    2021-06-18 12:06:38
  • python ftplib模块使用代码实例

    2023-04-17 10:19:49
  • Mysql5.7定时备份的实现

    2024-01-22 13:08:27
  • sqlserver 导出插入脚本代码

    2024-01-26 22:39:18
  • 彻底搞懂MySQL存储过程和函数

    2024-01-24 10:48:52
  • webpack学习教程之publicPath路径问题详解

    2023-07-16 06:09:52
  • asp之家 网络编程 m.aspxhome.com