Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【leetcode刷题】20T51-相同的树

【leetcode刷题】20T51-相同的树

作者头像
木又AI帮
发布于 2020-07-16 06:19:16
发布于 2020-07-16 06:19:16
29300
代码可运行
举报
文章被收录于专栏:木又AI帮木又AI帮
运行总次数:0
代码可运行

木又同学2020年第51篇解题报告

leetcode第100题:相同的树

https://leetcode-cn.com/problems/same-tree


【题目】

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
给定两个二叉树,编写一个函数来检验它们是否相同。
如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。

示例 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

【思路】

比较当前节点是否相同,再递归比较其左右孩子节点是否相同。

【代码】

python版本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution(object):
    def isSameTree(self, p, q):
        """
        :type p: TreeNode
        :type q: TreeNode
        :rtype: bool
        """
        # 都不存在
        if not p and not q:
            return True
        # 都存在
        if p and q:
            ## 比较值是否相同
            if p.val != q.val:
                return False
            return self.isSameTree(p.left, q.left) and self.isSameTree(p.right, q.right)
        # 只有一个存在
        return False
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-07-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 木又AI帮 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【leetcode刷题】T113-相同的树
https://leetcode-cn.com/problems/same-tree/
木又AI帮
2019/07/18
3820
​画解算法:100. 相同的树
https://leetcode-cn.com/problems/same-tree/
灵魂画师牧码
2019/07/11
4080
​画解算法:100. 相同的树
【Leetcode】100. 相同的树
大多数的二叉树题目都是用递归可以解的。 所以当拿到二叉树的题目的时候,我们首先就是看看能拆解成哪些子问题。 这个问题的子问题很简单,就是左子树,右子树都相等的二叉树是相同的二叉树。
Leetcode名企之路
2019/03/08
4310
LeetCode 系列 100. 相同的树
100. 相同的树: https://leetcode-cn.com/problems/same-tree/
村雨遥
2020/07/02
2860
一天一大 lee(相同的树)难度:简单-Day20200807
题目: 给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 示例 1 输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3] 输出: true 示例 2 输入: 1 1 / \ 2 2
前端小书童
2020/09/24
3130
一天一大 lee(相同的树)难度:简单-Day20200807
​LeetCode刷题实战100:相同的树
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !
程序员小猿
2021/01/19
2770
leetcode-100. 相同的树
  这道题可以采用递归判断的方法。首先对对传进来的的两个节点进行判空,若两个均为空则说明是一样的,但是任一节点一个为空另一个非空的和两节点都有值,但是值不同的均为不同的树了。若两节点有值且相同,则继续往下遍历,对应的左子节点与右子节点均要相同,递归直到结束,若都相同则为相同的树,否则不是相同的树。
灰太狼学Java
2022/06/17
1570
leetcode-100. 相同的树
leetcode: 100. Same Tree
Problem # Given two binary trees, write a function to check if they are the same or not. # # Two binary trees are considered the same if they are structurally identical # and the nodes have the same value. # # # Example 1: # # Input: # 1
JNingWei
2018/09/27
3600
☆打卡算法☆LeetCode 100、相同的树 算法解析
链接:100. 相同的树 - 力扣(LeetCode) (leetcode-cn.com)
恬静的小魔龙
2022/08/07
2330
☆打卡算法☆LeetCode 100、相同的树  算法解析
LeetCode 100. Same Tree (Tag : DFS)
Given two binary trees, write a function to check if they are the same or not.
用户7447819
2021/07/23
1650
【小Y学算法】⚡️每日LeetCode打卡⚡️——26.相同的树
思路解析 如果两个二叉树都为空,则两个二叉树相同。如果两个二叉树中有且只有一个为空,则两个二叉树一定不相同。
呆呆敲代码的小Y
2021/09/08
2070
【leetcode刷题】T116-二叉树的锯齿形层次遍历
https://leetcode-cn.com/problems/binary-tree-zigzag-level-order-traversal/
木又AI帮
2019/07/17
3580
【LeetCode - 101】平衡二叉树
Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center).
周三不加班
2019/09/03
3970
【LeetCode - 101】平衡二叉树
LeetCode 100. 相同的树
https://leetcode-cn.com/problems/same-tree/
freesan44
2021/09/23
2990
LeetCode 100. 相同的树
相同的树、对称二叉树、翻转二叉树
JavaScript实现LeetCode第100题:相同的树 JavaScript实现LeetCode第101题:对称二叉树 JavaScript实现LeetCode第226题:翻转二叉树 这几道题其实很相似,所以可以放在一起理解。 相同的树 题目描述 给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入: 1 1 / \ / \ 2 3
木子星兮
2020/07/17
4710
相同的树、对称二叉树、翻转二叉树
Python 刷题笔记:深度优先搜索专题
今天来接触下专业术语——深度优先搜索算法(英语:Depth-First-Search,DFS)
TTTEED
2020/07/09
2.5K0
LeetCode-100. 相同的树(java)
       题意讲的很清楚,就是判断两颗二叉树是否完全相同,其实就可以梳理成以下三点:
bug菌
2023/05/27
3200
LeetCode-100. 相同的树(java)
Q101 Symmetric Tree
Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center). For example, this binary tree [1,2,2,3,4,4,3] is symmetric: 1 / \ 2 2 / \ / \ 3 4 4 3 But the following [1,2,2,null,3,null,3] is not: 1 /
echobingo
2018/04/25
5430
leetcode树之相同的树
这里采用递归的思路,当p及q都为null返回true;若p和q都不为null且p.val等于q.val那么则递归判断isSameTree(p.left,q.left)及isSameTree(p.right,q.right);其他情况返回false。
code4it
2020/09/24
6110
leetcode树之相同的树
20190503-相同的树
相同的树 难度分类 简单 题目描述 给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入:       1         1           / \       / \          2   3     2   3         [1,2,3],   [1,2,3] 输出: true 示例 2: 输入:      1          1           /           \          2    
py3study
2020/01/16
4860
相关推荐
【leetcode刷题】T113-相同的树
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验