开荒新系列之LeetCode: NO.004 Same Tree
在广图,连刷两道题好了。
题目大意
比较两个二叉树的异同,只有结构完全相同,且对应结点的值也相同的二叉树,才是完全一致的。
基本思路
啊,我的DFS和BFS,你们又要出现啦。
到底用哪种呢?
感觉更偏好于DFS一些。因为大部分二叉树在构造的时候都会偏向于平衡结构,因而BFS在抵达较深层次的时候,会使其任务队列过于庞大(最多需要2^h的大小,h为深度),对于平衡二叉树,DFS仅需要约2*h的大小的栈容量,当然如果是单边的二叉树,那为什么不用链表呢。
我的解法
写离线测试好麻烦,得想一想怎么构思一个离线测试集了
# Definition for a binary tree node.
# class TreeNode(object):
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None