Leetcode刷题记录——100. 相同的树

在这里插入图片描述

思路:递归
设计一个函数对每个节点进行判断
若都为空 返回真
若都为非空 当二者值相等时 返回左孩子的递归 and 右孩子的递归
否则 返回假

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution:
    def isSameTree(self, p: TreeNode, q: TreeNode) -> bool:
        return self.isSameNode(p,q)

    def isSameNode(self,node1,node2):
        if node1 == None and node2 == None:
            return True
        elif node1 is not None and node2 is not None:       
            if node1.val == node2.val:
                return (self.isSameNode(node1.left,node2.left)) and (self.isSameNode(node1.right,node2.right))
            else:
                return False
        else:
            return False

发布了59 篇原创文章 · 获赞 14 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_41545780/article/details/105481955