我很困扰。请帮我解决这个问题

时间:2020-09-04 09:44:41

标签: python python-3.x

class TreeNode:
     def __init__(self, val=0, left=None, right=None):
         self.val = val
         self.left = left
         self.right = right
class Solution:
    def isSubtree(self, s: TreeNode, t: TreeNode) 
       if TreeNode(0) == TreeNode(0):
           print("yes")

为什么这两个节点不相等?

1 个答案:

答案 0 :(得分:2)

因为这两个对象是不同的实例。默认情况下,python比较对象的内存地址。

要使其工作,您需要在TreeNode中实现__eq__()方法来重新定义如何比较这些对象。