class TreeNode(object):
def __init__(self,x):
self.val = x
self.left = None
self.right = None
class Solution(object):
def mergeTrees(self,t1,t2):
if t1 and t2:
root = TreeNode(t1.val + t2.val)
root.left = self.mergeTrees(t1.left,t2.left)
root.right = self.mergeTrees(t1.right,t2.right)
return root
else:
return t1 or t2
Sol = Solution()
t1 = TreeNode(1)
t2 = TreeNode(2)
t1.left = TreeNode(2)
t1.right = TreeNode(3)
t2.left = TreeNode(3)
t2.right = TreeNode(4)
ans = Sol.mergeTrees(t1,t2)
print ans.val,ans.left.val,ans.right.val
0,比较简洁的算法
1,TreeNode 的初始化函数需要多加学习
2,递归的方法进行树的遍历