# -*- coding:utf=8 -*- # 二叉树的实现 # 二叉树的前序遍历 class Node(object): def __init__(self, index): self.index = index self.leftChild = None self.rightChild = None class BinaryTree(object): def __init__(self, root): self.root = root def preTravel(self, node): if not node: return print node.index self.preTravel(node.leftChild) self.preTravel(node.rightChild) nodeDict = {} for i in range(1, 10): nodeDict[i] = Node(i) nodeDict[1].leftChild = nodeDict[2] nodeDict[1].rightChild = nodeDict[3] nodeDict[2].leftChild = nodeDict[5] nodeDict[2].rightChild = nodeDict[6] nodeDict[3].leftChild = nodeDict[7] nodeDict[7].leftChild = nodeDict[8] nodeDict[7].rightChild = nodeDict[9] tree = BinaryTree(nodeDict[1]) tree.preTravel(tree.root)
分类: Python
0 条评论