二叉树
1.添加节点
1.广度优先遍历(层次遍历)
2.深度优先遍历
- 先序遍历
- 中序遍历
- 后续遍历
class TreeNode:
def __init__(self,v):
self.v = v
self.left = None
self.right = None
class Tree:
def __init__(self,root=None):
self.root = root
def add(self,val):
#广度优先遍历
def b_travel(self):
root = self.root
if not root:
return []
v = []
stack = []
stack.append(root)
while stack:
t = stack.pop(0)
v.append(t.val)
if t.left:
stack.append(t.left)
if t.right:
stack.append(t.right)
return v