python算法笔记--二叉树的实现

一、二叉树初始化

#节点
class Node:
    def __init__(self,key):
        self.key = key
        self.right = None
        self.left = None
#树
class AVL_tree:
    def __init__(self,root):
        self.root = root
    def find(self,key):
        if self.root == None:
            return None
        else:
            return self._find(key,self.root)
    def _find(self,key,node):
        #树中查找不到key
        if node is None:
            return None
        if key < node.key:
            return  self._find(key,node.left)
        elif key > node.key:
            return self._find(key,node.right)
        else:
            return node
#初始化二叉树,根节点为5
node = Node(5)
tree = AVL_tree(node)
#查找结点
a = tree.find(5)
print(a.key)
发布了23 篇原创文章 · 获赞 9 · 访问量 4213

猜你喜欢

转载自blog.csdn.net/qq1225598165/article/details/101123187