二叉樹的建立(python)

2021-08-22 05:59:24 字數 907 閱讀 2072

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 再利用棧這個資料結構,分析一下 掃瞄整個括號表示的字串,這個字串中只有四種字元...