zoukankan      html  css  js  c++  java
  • 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
    方法1:
     1 class Solution:
     2     def isSameTree(self, p, q):
     3         """
     4         :type p: TreeNode
     5         :type q: TreeNode
     6         :rtype: bool
     7         """
     8         if not p or not q:
     9             return p == q
    10         left = self.isSameTree(p.left,q.left)
    11         right = self.isSameTree(p.right,q.right)
    12         return p.val == q.val and left and right  

    前序遍历:

     1 class Solution:
     2     def isSameTree(self, p, q):
     3         """
     4         :type p: TreeNode
     5         :type q: TreeNode
     6         :rtype: bool
     7         """
     8         if p==None and q==None:
     9             return True
    10         if p==None:
    11             return False
    12         if q==None:
    13             return False
    14         
    15         self.ans = True
    16         self.preorder(p,q)
    17         
    18         return self.ans
    19     
    20     def preorder(self, p, q):
    21         if p and q:
    22             if p.val != q.val:
    23                 self.ans = False
    24                 return
    25             self.preorder(p.left, q.left)
    26             self.preorder(p.right, q.right)
    27         elif q or q:
    28             self.ans = False
    29             return
    2018-09-02 16:30:45
  • 相关阅读:
    UML中常用的几种图
    JVM调优问题与总结
    可视化算法学习网站
    [MacOS]查看端口占用进程
    [MacOS]停止"访达"操作,然后再次尝试推出磁盘
    [MacOS]蓝牙重置
    [CentOS7]扩充swap空间
    [5500V5]开启snmpv2
    [Cisco]MDS 9148S 开启snmp v2
    [CentOS7]测试udp端口
  • 原文地址:https://www.cnblogs.com/NPC-assange/p/9574265.html
Copyright © 2011-2022 走看看