python先序遍历二叉树问题

 更新时间:2017年11月10日 10:50:14   作者:玩蛇的  
这篇文章主要介绍了python先序遍历二叉树问题,简单分析了问题,然后向大家分享了代码示例,具有一定参考价值,需要的朋友可以了解下。

问题

如何遍历一个二叉树

遍历二叉树就是访问二叉树的每一个节点

二叉树父结点下先左访问,先序遍历(根左右)

例如:遍历以下的二叉树

遍历结果:ABDECF

Python代码示例

# !/usr/bin/env python
# -*-encoding: utf-8-*-
# author:LiYanwei
# version:0.1


class TreeNode(object):
  '''
  二叉树类
  '''
  def __init__ (self, data, left = None, right = None):
    self.data = data
    self.left = left
    self.right = right

  def __str__(self):
    return str(self.data)

def createTree():
  '''
  创建二叉树函数
  '''
  # 创建如图的二叉树
  # 1.创建节点
  A = TreeNode('A')
  B = TreeNode('B')
  C = TreeNode('C')
  D = TreeNode('D')
  E = TreeNode('E')
  F = TreeNode('F')
  # 列表解析
  # A, B, C, D, E, F = [TreeNode(x) for x in 'ABCDEF']

  # 2.创建节点之间的关系
  A.left = B
  A.right = C
  B.left = D
  B.right = E
  C.left = F
  return A


def preOrder(node):
  '''
  先序遍历 先左后右 使用递归
  :param node:
  :return:
  '''
  if node is None:
    return
  print node.data
  preOrder(node.left)
  preOrder(node.right)

if __name__ == '__main__':
  # 二叉树的创建
  root = createTree()
  # 二叉树的遍历
  preOrder(root) 

总结

以上就是本文关于python先序遍历二叉树问题的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:Python3调用微信企业号API发送文本消息代码示例浅谈python中的占位符python实现人脸识别代码等,有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对本站的支持!

相关文章

  • python爬虫获取新浪新闻教学

    python爬虫获取新浪新闻教学

    在本篇内容中小编给大家分享的是关于python爬虫获取新浪新闻的相关步骤和知识点,需要的可以跟着学习下。
    2018-12-12
  • 使用python绘制cdf的多种实现方法

    使用python绘制cdf的多种实现方法

    今天小编就为大家分享一篇使用python绘制cdf的多种实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • 详解Python中如何添加Selenium WebDriver等待

    详解Python中如何添加Selenium WebDriver等待

    Selenium Web 驱动程序提供两种类型的等待, 第一个是隐式等待,第二个是显式等待,本文主要为大家介绍了Python如何在Selenium Web驱动程序中添加这两种等待,需要的可以参考下
    2023-11-11
  • Pytest中skip和skipif的具体使用方法

    Pytest中skip和skipif的具体使用方法

    在实际的测试中,我们经常会遇到需要跳过某些测试用例的情况,pytest提供了skip和ifskip来跳过测试.下面我们就来通过一些例子看看skip和ifskip具体如何使用吧,需要的朋友可以参考下
    2021-06-06
  • 详细介绍Ruby中的正则表达式

    详细介绍Ruby中的正则表达式

    这篇文章主要介绍了详细介绍Ruby中的正则表达式,文章中还给出了用于搜索和替换的正则表达式的使用实例,需要的朋友可以参考下
    2015-04-04
  • python rsa-oaep加密的示例代码

    python rsa-oaep加密的示例代码

    这篇文章主要介绍了python rsa-oaep加密示例的示例代码,帮助大家更好的利用python加解密,感兴趣的朋友可以了解下
    2020-09-09
  • 用Python脚本来删除指定容量以上的文件的教程

    用Python脚本来删除指定容量以上的文件的教程

    这篇文章主要介绍了用Python脚本来删除指定容量以上的文件的教程,是Python操作文件的一个简单实践,需要的朋友可以参考下
    2015-05-05
  • python 下 CMake 安装配置 OPENCV 4.1.1的方法

    python 下 CMake 安装配置 OPENCV 4.1.1的方法

    这篇文章主要介绍了python 下 CMake 安装配置 OPENCV 4.1.1的方法,文中给大家提到了CMake 安装配置 OPENCV 4.1.1 解决各种问题,需要的朋友可以参考下
    2019-09-09
  • Python实现将DOC文档转换为PDF的方法

    Python实现将DOC文档转换为PDF的方法

    这篇文章主要介绍了Python实现将DOC文档转换为PDF的方法,涉及Python调用系统win32com组件实现文件格式转换的相关技巧,需要的朋友可以参考下
    2015-07-07
  • Django使用模板后无法找到静态资源文件问题解决

    Django使用模板后无法找到静态资源文件问题解决

    这篇文章主要介绍了Django使用模板后无法找到静态资源文件问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07

最新评论