美文网首页
【基础】练习册38-Python3_定义二叉树2

【基础】练习册38-Python3_定义二叉树2

作者: Alyna_C | 来源:发表于2021-02-04 06:55 被阅读0次

定义二叉树2

代码如下:

#定义二叉树

def BinaryTree(r):

    return [r,[],[]]

def insertLeft(root,newBranch): #添加做子节点

    t = root.pop(1)

    if len(t) > 1:

        root.insert(1,[newBranch,t,[]])

    else:

        root.insert(1,[newBranch,[],[]])

    return root

def insertRight(root,newBranch):#添加右子节点

    t = root.pop(2)

    if len(t) > 1:

        root.insert(2,[newBranch,[],t])

    else:

        root.insert(2,[newBranch,[],[]])

    return root

def getRootVal(root): #获取根值

    return root[0]

def setRootVal(root,newVal): #设置根值

    root[0] = newVal

def getLeftChild(root): #获取左子树

    return root[1]

def getRightChild(root): #获取右子树

    return root[2]

r = BinaryTree(3)

insertLeft(r,4)

insertLeft(r,5)

insertRight(r,6)

insertRight(r,7)

l = getLeftChild(r)

#print(l)

#r = getRightChild(r)

#print(r)

setRootVal(l,9)

print(r)

insertLeft(l,11)

print(r)

print(getRightChild(getRightChild(r)))

运行结果为:

[3, [9, [4, [], []], []], [7, [], [6, [], []]]]

[3, [9, [11, [4, [], []], []], []], [7, [], [6, [], []]]]

[6, [], []]

相关文章

  • 【基础】练习册38-Python3_定义二叉树2

    定义二叉树2 代码如下: #定义二叉树def BinaryTree(r): return [r,[],[]]de...

  • 满二叉树(Full Binary Tree)

    国内教程和国外对满二叉树的定义有一些的区别。 一、国内满二叉树 1、定义 2、特点 二、国外满二叉树 1、定义 2、特点

  • 数据结构 - 二叉树(Binary Tree)

    1、二叉树定义和特点 1.1、定义 1.2、特点 2、二叉树的遍历 从根节点出发,按照某种次序依次访问二叉树中所有...

  • 二叉树的前中后序遍历 Java递归与非递归实现

    1. 二叉树的定义 构造二叉树 2. 二叉树的递归遍历 2.1 二叉树递归先序遍历 2.2 二叉树递归中序遍历 2...

  • 二叉树的遍历

    关于二叉树的算法问题,一般都以二叉树的遍历为基础,这里给出二叉树的多种遍历方式 树结构: 树结点的定义及其构建: ...

  • 【基础】练习册37-Python3_定义二叉树1

    定义二叉树1: 代码如下: class BinaryTree: def __init__(self,nodeOb...

  • 二叉树深度求导golang实现

    二叉树定义 节点值这里定义为int类型 求二叉树的深度 后续遍历方式: 二叉树结构如下: 二叉树初始化 定义求导函...

  • 二叉树操作

    1、定义二叉树 2、创建二叉树 3、计算二叉树的深度 4、计算二叉树的节点 5、前序遍历 6、中序遍历 7、后序遍...

  • 平衡二叉树(AVL)

    定义 平衡二叉树是建立在二叉平衡树基础上,目的使得各个节点的深度尽可能小。平衡二叉树是一颗二叉树,或者为空,或者满...

  • python遍历二叉树

    定义二叉树: 构建二叉树: BFS: 先序遍历:1.递归版本: 2.非递归版本: 中序遍历: 1.递归版本 2.非...

网友评论

      本文标题:【基础】练习册38-Python3_定义二叉树2

      本文链接:https://www.haomeiwen.com/subject/etwstltx.html