用python实现排序二叉树(中序)
程序员文章站
2024-03-19 22:53:16
...
class SortTree():
def __init__(self):
self.root = None
def add(self, item):
node = Node(item)
cur = self.root
if cur == None:
self.root = node
return
while cur:
if item > cur.item:
if cur.right == None:
cur.right = node
break
else:
cur = cur.right
else:
if cur.left == None:
cur.left = node
break
else:
cur = cur.left
def travle(self):
cur = self.root
q = [cur]
while q:
nd = q.pop(0)
print(nd.item)
if nd.left:
q.append(nd.left)
if nd.right:
q.append(nd.right)
def middle(self, root):
if root == None:
return
self.middle(root.left)
print(root.item)
self.middle(root.right)
t = SortTree()
alist = [3, 8, 5, 7, 6, 2, 9, 4, 1]
for i in alist:
t.add(i)
# t.travle()
t.middle(t.root)
推荐阅读
-
用python实现排序二叉树(中序)
-
用python对《黑客帝国I》中的代码雨的实现
-
数据结构-二叉搜索树和二叉树排序算法(python实现)
-
Python实现树的先序、中序、后序排序算法示例
-
python3.4用循环往mysql5.7中写数据并输出的实现方法
-
Python实现树的先序、中序、后序排序算法示例
-
python3.4用循环往mysql5.7中写数据并输出的实现方法
-
算法题:按字符串中的数字大小排序,python实现
-
快速修改数组的某个值_我用Python,3分钟快速实现,9种经典排序算法的可视化...
-
LeetCode 题目-671. 二叉树中第二小的节点/687.最长同值路径(python实现)