剑指 Offer 28. 对称的二叉树

Ideas

一开始想的有问题,看了例子以为对称二叉树的中序遍历序列是回文数组,然后就用这么写了,结果到第192个测试用例[1,2,2,2,null,2]就失败了,才恍然大悟,回文判定搞不定。

那就还是递归吧,简单暴力一点。

两个指针m和n,每次m往左移的时候n就往右移,m往右移的时候n就往左移。边界条件就是两个指针同时为空,return true;,如果一个为空一个不为空的话说明不对称,return false;

Code

C++

class Solution {public:bool check(TreeNode* m, TreeNode* n) {if (!m && !n) return true;if (!m || !n) return false;return m->val == n->val && check(m->left, n->right) && check(m->right, n->left);}bool isSymmetric(TreeNode* root) {return check(root, root);}
};

LeetCode Algorithm 剑指 Offer 28. 对称的二叉树相关推荐

  1. 【LeetCode】剑指 Offer 28. 对称的二叉树

    [LeetCode]剑指 Offer 28. 对称的二叉树 文章目录 [LeetCode]剑指 Offer 28. 对称的二叉树 一.递归 一.递归 对称二叉树定义:对于书中任意两个对称结点 L 和 ...

  2. 《LeetCode力扣练习》剑指 Offer 28. 对称的二叉树 Java

    <LeetCode力扣练习>剑指 Offer 28. 对称的二叉树 Java 一.资源 题目: 请实现一个函数,用来判断一棵二叉树是不是对称的.如果一棵二叉树和它的镜像一样,那么它是对称的 ...

  3. 剑指 Offer 28. 对称的二叉树 -- 递归

    0 题目描述 leetcode原题链接:剑指 Offer 28. 对称的二叉树 1 递归解法 对称二叉树定义: 对于树中 任意两个对称节点 LLL 和 R,R,R, 一定有: L.val=R.val: ...

  4. 【Java】 剑指offer(28) 对称的二叉树

    本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 请实现一个函数,用来判断一棵二叉树是不是对称的.如果一棵二叉树和它 ...

  5. 剑指 Offer 28. 对称的二叉树【无取巧,易于理解!】

    看题解时,很多大牛用很少的代码就完成了AC,但可能看了很多遍也看不懂,因此萌生了写一种最"笨"最完整的代码的想法,这样大家可以通过我的代码入门,看懂了再去挑战大牛们的简洁解法. 请 ...

  6. LeetCode-剑指 Offer 28. 对称的二叉树

    剑指 Offer 28. 对称的二叉树 对称二叉树定义:对于树中任意两个对称节点L和R,一定有: L.val == R.val:这两个对称节点值相等 L.left.val == R.right.val ...

  7. LeetCode Algorithm 剑指 Offer II 056. 二叉搜索树中两个节点之和

    剑指 Offer II 056. 二叉搜索树中两个节点之和 Ideas 这题有点类似一个组合题,首先是通过二叉树遍历得到一个序列,然后再通过LeetCode Algorithm 1. 两数之和的方法查 ...

  8. LeetCode Algorithm 剑指 Offer 57 - II. 和为s的连续正数序列

    剑指 Offer 57 - II. 和为s的连续正数序列 Ideas 区间问题首先想到用双指针. 因为这题没有给定数组,其实相当于就是一个从1到target的数组,然后直接套双指针的模板就可以了. 双 ...

  9. LeetCode Algorithm 剑指 Offer 25. 合并两个排序的链表

    剑指 Offer 25. 合并两个排序的链表 Ideas 这题让我想到了归并排序: 划分问题:把序列分成元素个数尽量相等的两半: 递归求解:把两半元素分别排序: 合并问题:把两个有序表合并成一个. 捞 ...

最新文章

  1. netca error
  2. 如何用php新增税金一列_PHP计算个人所得税步骤详解(附代码)
  3. hdoj 2544 最短路
  4. 云服务器+开发板搭建直播系统,自建流媒体服务器开直播
  5. MySQL主从复制Linux实现
  6. 机器学习实战-决策树-22
  7. 淘汰算法LRU是什么?
  8. 22504!Windows 11 新预览版发布
  9. 三种Cache写入方式原理简介
  10. exists sql用法_干货!SQL性能优化,书写高质量SQL语句
  11. idea中常用的快捷键以及一些奇淫技巧 , 加快我们的开发效率
  12. Vue使用vue-cli创建vue的模板项目---vue工作笔记0018
  13. Spring Security Oauth2 认证(获取token/刷新token)流程
  14. SharePoint 2010 获取列表全部定义方法
  15. day03_01 Python历史、32bit和64bit系统的区别
  16. android 百度地图 64位,百度地图 Android SDK
  17. JAVA看云判断天气_看云,能否“识”天气?
  18. matlab点集配准,matlab练习程序(对应点集配准的四元数法)
  19. nolo手柄配对不上_用NOLOHOME玩电脑VR游戏-支持键鼠和游戏手柄
  20. SecureFx设置密钥登陆

热门文章

  1. 0x13链表与邻接表之邻值查找
  2. jenkins使用docker部署web应用
  3. iOS ARC环境下dealloc的使用
  4. ajax常见问题汇总(一)
  5. apk 反编译_APK反编译与回编译修改包名实现分身
  6. 计算机专业期末考试是编程序,武汉大学计算机学院C语言期末考试
  7. 每日程序C语言31-auto的使用
  8. python 计时_python怎么实现计时
  9. Java黑皮书课后题第6章:**6.24(显示当前日期和时间)程序清单2-7显示当前时间。改进这个例子,显示当前的日期和时间。程序清单6-12中的日历例子可以提供一些如何提供如何求年月日的思路
  10. caffe学习(1) ubunu 16.04+caffe+cuda8.0+opencv3.1安装