给定一个二叉树,检查它是否是镜像对称的。

例如,二叉树 [1,2,2,3,4,4,3] 是对称的。

1
   / \
  2   2
 / \ / \
3  4 4  3

但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的:

1
   / \
  2   2
   \   \
   3    3

class Solution(object):def isSymmetric(self, root):""":type root: TreeNode:rtype: bool"""if not root:return Truedef dfs(left,right):# 递归的终止条件是两个节点都为空# 或者两个节点中有一个为空# 或者两个节点的值不相等if not (left or right):return Trueif not (left and right):return Falseif left.val!=right.val:return Falsereturn dfs(left.left,right.right) and dfs(left.right,right.left)# 用递归函数,比较左节点,右节点return dfs(root.left,root.right)
class Solution(object):def isSymmetric(self, root):if not root:return Truedef dfs(left,right):if not (left or right):return Trueif not (left and right):return Falseif left.val != right.val:return Falsereturn dfs(left.left, right.right) and dfs(left.right,right.left)return dfs(root.left,root.right)

2021-09-03101. 对称二叉树相关推荐

  1. 力扣 (LeetCode)-对称二叉树,树|刷题打卡

    Github来源:力扣 (LeetCode)|刷题打卡 | 求星星 ✨ | 给个❤️关注,❤️点赞,❤️鼓励一下作者 [已开启]任务一:刷题打卡 * 10 篇 哪吒人生信条:如果你所学的东西 处于喜欢 ...

  2. 【每日一算法】对称二叉树

    每日一算法-对称二叉树 题目 给定一个二叉树,检查它是否是镜像对称的. 例如,二叉树 [1,2,2,3,4,4,3] 是对称的. 1   / \  2   2 / \ / \ 3  4 4  3 但是 ...

  3. 橘子CPS联盟操作手册2021.09

    橘子CPS联盟操作手册2021.09 目录 橘子CPS联盟操作手册2021.09 橘子CPS联盟是干嘛的 橘子CPS基本操作流程 PC端操作 1.注册 2.登陆 3.渠道管理 4.分享网站 5.分享网 ...

  4. 【LeetCode 剑指offer刷题】树题6:28 对称二叉树(101. Symmetric Tree)

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 101. Symmetric Tree /**  * Definition for a binary tree no ...

  5. LeetCode 100相同的树101对称二叉树

    微信搜一搜:bigsai 大家都在关注的刷题.学习数据结构和算法宝藏项目 关注回复进群即可加入力扣打卡群,欢迎划水.近期打卡: (https://bigsai.blog.csdn.net/articl ...

  6. [leetcode] 101. 对称二叉树

    101. 对称二叉树 一开始想复杂了呀,没有做出来 直观的思路就是反转这颗树,然后判断两颗树是不是相同的 class Solution {// 反转并创建一颗树public TreeNode reve ...

  7. 《剑指offer》-- 二叉树的下一个结点、对称二叉树、按之字性顺序打印二叉树、把二叉树打印成多行

    一.二叉树的下一个结点: 1.题目: 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回.注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针. 2.解题思路: 分析二叉树 ...

  8. 剑指offer之中判断二叉树是不是对称二叉树(递归和非递归实现)

    1 问题 判断二叉树是不是对称(递归和非递归实现) 如下二叉树,就是对称的二叉树 23 3 1 4 4 1 如下二叉树,就是非对称的二叉树 23 3 1 4 4 2 2 代码实现 #include & ...

  9. 101. 对称二叉树 golang

    101. 对称二叉树 给定一个二叉树,检查它是否是镜像对称的. 例如,二叉树 [1,2,2,3,4,4,3] 是对称的. 1/ \2 2/ \ / \ 3 4 4 3 但是下面这个 [1,2,2,nu ...

  10. 二叉树题目----2 检查两颗树是否相同 和 对称二叉树的判定

    检查两颗树是否相同 思路 根要相等 p->val == q->val 左子树相等 isSameTree(p->left,q->left) 右子树也要相等 isSameTree( ...

最新文章

  1. 程序员致富的若干方法探讨
  2. 停车场计费算法 php,停车场收费算法,思路卡住了求补完!该如何处理
  3. Jquery赋值和取值input,combobox,numberbox........
  4. MySQL通过安装包提供的卸载功能卸载
  5. java8和9兼容吗_甲骨文限制 Java 9 到 Java 8 的向后兼容性
  6. php parse url ctf,【SSRF】如何绕过filter_var(), preg_match() 和 parse_url()
  7. 【英语学习】【English L06】U01 Breakfast L4 Drink Morning Tea
  8. 校招刷题---java选择题笔记02
  9. pip更新后怎么还是旧版本_微信号不能修改第二次怎么办?微信更新后还是不能修改微信号怎么办?...
  10. 微信公众号 分享接口 签名通过 分享无效果(JSSDK自定义分享接口的策略调整)...
  11. spring4.0.0的配置和使用
  12. 科创人·黑湖科技CEO周宇翔:To B产品不应忽视产品体验,制造业的未来是需求定义生产
  13. clientHeight、offsetHeight、innerHeight、ouerHeight 区别
  14. 获取requests http报文
  15. 2018年机器学习从业者_机器学习从业者在2020年及以后创造收入的5种方式
  16. L1-005 考试座位号 (15 分)
  17. 我要有女朋友肯定带她吃完这上面所有的小吃(很便宜哥们儿们行动起来吧)
  18. [MRCTF2020]套娃
  19. 如何查看自己加入过的微信群
  20. 漫画 | 程序员职场屌丝逆袭,一举惊艳所有人!

热门文章

  1. prototype.js学习(1)
  2. Mac下使用Docker快速搭建pinpont追踪系统APM
  3. 推送MobPush-API说明
  4. 使用邮件客户端整合日常信息
  5. 使用getopt函数对命令行短形参进行处理
  6. ORA-01033 ORACLE initialization or shutdow in progress
  7. 思科6000系列交换机配置维护手册
  8. pku2707--Copier Reduction
  9. C程序设计--结构体+单向链表
  10. 通信原理电子版_2021届通信工程专业保研经历分享+个人经验总结