Python 自定义二叉树结构

Posted 缺陷催生进化,完美预示终结

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 自定义二叉树结构相关的知识,希望对你有一定的参考价值。

class BinaryTree:
    def __init__(self,value):
        self._left=None
        self._right=None
        self._data=value
 
    def insertLeftChild(self,value):        #创建左子树
        if self._left:
            print(left child tree already exists.)
        else:
            self._left=BinaryTree(value)
            return self._left
 
    def insertRightChild(self,value):          #创建右子树
        if self._right:
            print(right child tree already exists.)
        else:
            self._right=BinaryTree(value)
            return self._right
 
    def show(self):
        print(self._data)
 
    def preOrder(self):       #前序遍历(根左右)
        print(self._data)
        if self._left:
            self._left.preOrder()
        if self._right:
            self._right.preOrder()
 
    def postOrder(self):               #后序遍历(左右根)
        if self._left:
            self._left.postOrder()
        if self._right:
            self._right.postOrder()
        print(self._data)
 
    def inOrder(self):             #中序遍历(左根右)
        if self._left:
            self._left.inOrder()
        print(self._data)
        if self._right:
            self._right.inOrder()
 
if __name__==__main__:
    print(Please use me as a module.)

 

以上是关于Python 自定义二叉树结构的主要内容,如果未能解决你的问题,请参考以下文章

python实战--数据结构二叉树

Python—二叉树数据结构

数据结构与算法-自定义二叉树API

Java数据结构系列——自平衡二叉树

数据结构-二叉树

python数据结构树和二叉树简介