# -*- coding: UTF-8 -*-
class SubtreeIndexError(ValueError):
pass
def tree(data, *subtrees):
return [data].extend(subtrees)
def is_empty(tree):
return tree is None
def root(tree):
return tree[0]
def subtree(tree, i):
if i < 1 or i > len(tree):
raise SubtreeIndexError
return tree[i + 1]
def set_root(tree, data):
tree[0] = data
def set_subtree(self, i, subtree):
if i < 1 or i > len(tree):
raise SubtreeIndexError
tree[i + 1] = subtree
class TreeNode:
def __init__(self, data, subs=[]):
self._data = data
self._subtrees = list(subs)
def __str__(self): # 用于显示和输出
return "[TreeNode {0} {1}]".format(self._data,
self._subtrees)
树的python实现
猜你喜欢
转载自blog.csdn.net/zhangyu4863/article/details/80601256
今日推荐
周排行