hw7
来源:互联网 发布:图片数据库 编辑:程序博客网 时间:2024/06/06 11:01
class Tree: def __init__(self,entry,left=None,right=None): self.entry=entry self.left=left self.right=right def __repr__(self): args=repr(self.entry) if self.left or self.right: args+=',{0},{1}'.format(repr(self.left),repr(self.right)) return 'Tree({0})'.format(args)class BStree(Tree): passdef square_tree(t): if t==None: return else: t.entry=t.entry**2 square_tree(t.left) square_tree(t.right)def height(t): if t==None: return 0 else: return 1+max(height(t.left),height(t.right))def size(t): if t==None: return 0 else: return size(t.left)+size(t.right)+1def find_path(t,x): if t==None: return None elif t.entry==x: return (x,) left=find_path(t.left,x);right=find_path(t.right,x) if left: return (t.entry,)+left elif right: return (t.entry,)+right else: return Nonedef preorder(t): if t!=None: preorder(t.left) print(t.entry,end=' ') preorder(t.right)#t=Tree(2,Tree(7,Tree(2),Tree(6,Tree(5),Tree(11))),Tree(15))#print(t)#preorder(t)def list_to_bst(lst): if len(lst)==0: return None elif len(lst)==1: return Tree(lst[0]) else: q=len(lst)//2 lchild=list_to_bst(lst[:q]) rchild=list_to_bst(lst[q+1:]) return Tree(lst[q],lchild,rchild)def find_path_bst(t,val): lst=list(range(1,10))t=list_to_bst(lst)print(t)preorder(t)
0 0
- hw7
- Jos HW7
- 算法设计与分析HW7:LeetCode56.Merge Intervals
- FFT的详细解释
- [Python]入门教程(四):Python中的函数
- POJ 1316 Self Numbers
- 我最喜欢的10条编程语录
- [Python]入门教程(五):Python中的模块
- hw7
- Space Station Shielding(洪泛算法)
- [Python]入门教程(六):Python中的数据结构
- MFC小程序02————— 不规则窗口小应用程序
- HDU 2807 The Shortest Path(矩阵相乘+Floyd)
- lucene、solr中的日期衰减方法-------function query --尚未测试在solr4.8
- 题目1388:跳台阶
- UVa12541 - Birthdates(排序)
- Android Layout布局文件里的android:layout_height等属性为什么会不起作用?