leetcode_100. 相同的树

目录

一、题目内容

二、解题思路

三、代码


一、题目内容

给定两个二叉树,编写一个函数来检验它们是否相同。

如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。

示例 1:

输入:       1         1
          / \       / \
         2   3     2   3

        [1,2,3],   [1,2,3]

输出: true

示例 2:

输入:      1          1
          /           \
         2             2

        [1,2],     [1,null,2]

输出: false

示例 3:

输入:       1         1
          / \       / \
         2   1     1   2

        [1,2,1],   [1,1,2]

输出: false

二、解题思路

同时比较两棵树的相同位置节点即可。

三、代码

# Definition for a binary tree node.
class TreeNode:
    def __init__(self, val=0, left=None, right=None):
        self.val = val
        self.left = left
        self.right = right
class Solution:
    def isSameTree(self, p: TreeNode, q: TreeNode) -> bool:

        def dfs(p, q):
            if p is not None and q is not None:
                if p.val == q.val:
                    if dfs(p.left, q.left) is False:
                        return False
                    if dfs(p.right, q.right) is False:
                        return False
                    return True
                else:
                    return False
            elif p is None and q is not None:
                return False
            elif p is not None and q is None:
                return False
            else:
                return True
        return dfs(p, q)


if __name__ == '__main__':
    p = TreeNode(3)
    p.left = TreeNode(2)
    p.right = TreeNode(9)
    p.right.left = TreeNode(5)
    p.right.right = TreeNode(6)
    q = TreeNode(3)
    q.left = TreeNode(2)
    q.right = TreeNode(9)
    q.right.left = TreeNode(5)
    q.right.right = TreeNode(6)

    s = Solution()
    ans = s.isSameTree(p, q)
    print(ans)
悲恋花丶无心之人 CSDN认证博客专家 深度学习 神经网络 Pytorch
计算机视觉在读研究生,熟悉Pytorch,MXNet,TensorFlow,Keras等深度学习框架,主要涉及的领域有目标检测,语义分割,超分辨率重建,行人重识别等。
个人GitHub网址为:https://github.com/nickhuang1996
©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页
实付 29.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值