1、構造器,定義乙個構造器,用來構造樹。
2、向樹中新增資料。
如圖我們定義了這樣一顆二叉樹,我們用**來建立它
用**實現,**如下:
#coding=utf-8
class treenode(object):
def __init__(self,data=none,left=none,right=none):
self.data = data
self.left = left
self.right = right
# 這一步是在每次呼叫某個結點時,自動呼叫.data的方法
def __str__(self):
return str(self.data)
# 方法一
a, b, c, d, e, f, g, h, i = [treenode(x) for x in 'abcdefghi']
a.left, a.right = b, c
b.right = d
c.left, c.right = e, f
e.left = g
f.left,f.right = h, i
print c.right
# 方法二
a = treenode('a','b','c')
b = treenode('b',none,'d')
c = treenode('c','e','f')
e = treenode('e','g',none)
f = treenode('f','h','i')
print c.right
Python 建立二叉樹
在這之前我一直都沒搞清楚,python對於二叉樹是怎麼建立 所以今天就查了一些資料和教程 話不多說,上 初始化 class binarytreeinit object def init self,x self.val x self.left none self.right none 二叉樹 clas...
建立二叉樹 後序建立二叉樹
由後序遍歷可知,輸入順序是左結點 右結點 子樹根結點 比如輸入如下樹 ab cde 輸入序列為 e d b c a 思路 使用棧,對左結點和右結點進行壓棧 1.當輸入遇到非 且棧中元素大於等於2,則可以確定乙個小三角樹形,並將這個樹根作為下乙個小三角樹形的乙個子節點 2.當輸入遇到非 但棧中元素小於...
二叉樹的建立 遍歷1 建立二叉樹
談二叉樹,如果二叉樹都沒有正確的建立出來,那豈不是紙上談兵!括號表示式 表示方法 1.括號 括號內的東西是括號前的元素的孩子 2.逗號 逗號是為了區分左右孩子 演算法分析 給出乙個如上的括號表示式 a b d g e,f 再利用棧這個資料結構,分析一下 掃瞄整個括號表示的字串,這個字串中只有四種字元...