python描述二叉树
来源:互联网 发布:刘德华 17岁 知乎 编辑:程序博客网 时间:2024/05/02 03:04
二叉树的节点以及树的创建
通过Node类定义三个属性,分别为elem本身的值,还有lchild左孩子和rchild右孩子
class Node(object): """节点类""" def __init__(self,elem=-1,lchild=None,rchild=None): self.elem = elem self.lchild = lchild self.rchild = rchild
树的创建,创建一个树的类,并给一个root根节点,一开始为空,随后添加节点
class Tree(object): """树类""" def __init__(self,root=None): self.root = root def add(self,elem): """为树添加节点""" node = Node(elem) # 如果树是空的,则对根节点赋值 if self.root == Node: self.root = node else: queue = [] queue.append(self.root) # 对已有的节点进行层次遍历 while queue: # 弹出队列的第一个元素 cur = queue.pop(0) if cur.lchild == None: cur.lchild = node return else: # 如果左右子树都不为空,加入队列继续判断 queue.append(cur.lchild) queue.append(cur.rchild)
阅读全文
0 0
- python描述二叉树
- 二叉搜索树描述
- 二叉树数组描述
- C++ 二叉树的描述
- 《数据结构与算法-Python语言描述》读书笔记(6)第6章二叉树和树(关键词:数据结构/算法/Python/二叉树/树)
- java通过数组描述二叉树
- 二叉树的实现(Java语言描述)
- 求二叉树的深度 java描述
- 面试中的二叉树题目,java描述
- 二叉树算法c语言描述
- Python 二叉树练习
- Python实现二叉树
- python 二叉查找树
- python实现二叉树
- python实现二叉树
- python 二叉树
- Python 遍历二叉树
- python 二叉树
- windows下修改终端编码
- Spring-boot-Mybatis-Starter
- Android自定义控件带弹性
- Revit二次开发之向Revit窗体发送虚拟按键
- HTML用JS导出Excel的五种方法
- python描述二叉树
- 网路互联参考模型 存档理解
- 基于DJI-OSDK-ROS 3.4版本demo_camera_gimbal.cpp程序阅读注释
- 分布式事务
- 吃货告诉你,PAAS、IAAS和SAAS之间的区别
- chars拦截到response乱码问题
- golang基础(unsafe包使用)
- 新登月计划:阿里云ET大脑获颁世界互联网领先科技成果奖
- MYSQL存储过程遍历结果集游标 从一张表插入数据到另一张表