news 2026/5/26 4:19:10

LeetCode 分类刷题:101. 对称二叉树

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
LeetCode 分类刷题:101. 对称二叉树

题目

给你一个二叉树的根节点root, 检查它是否轴对称。

解析

把输入的二叉树拆分成左子树 p 和右子树 q。我们需要判断 p 和 q 是否互为镜像。

类似 LeetCode 分类刷题:100. 相同的树,必须满足:

  • p.val 等于 q.val。
  • p 的左儿子与 q 的右儿子互为镜像。这是一个和原问题相似的子问题,可以递归判断。
  • p 的右儿子与 q 的左儿子互为镜像。这是一个和原问题相似的子问题,可以递归判断。

作者:灵茶山艾府
链接:https://leetcode.cn/problems/symmetric-tree/solutions/2015063/ru-he-ling-huo-yun-yong-di-gui-lai-kan-s-6dq5/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

答案

/** * Definition for a binary tree node. * function TreeNode(val, left, right) { * this.val = (val===undefined ? 0 : val) * this.left = (left===undefined ? null : left) * this.right = (right===undefined ? null : right) * } */ /** * @param {TreeNode} root * @return {boolean} */ var isSymmetric = function(root) { function f(p, q) { if(p === null || q === null) { return p === q; } return p.val === q.val && f(p.left, q.right) && f(p.right, q.left); } return f(root.left, root.right); //注意这里要加 return !函数f的return是返回给函数isSymmetric的! };

复杂度分析

时间复杂度:O(n)

空间复杂度:O(n)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/25 15:16:33

Dify 1.7.0音频转文字实测解析(精准度高达98.6%的底层逻辑曝光)

第一章:Dify 1.7.0音频转文字功能概览Dify 1.7.0 版本引入了全新的音频转文字功能,显著提升了语音内容处理的效率与准确性。该功能基于先进的语音识别模型,支持多种常见音频格式(如 MP3、WAV、M4A),可广泛应…

作者头像 李华
网站建设 2026/5/26 7:17:40

astmd4169、astm d4169运输包装测试系统有多少测试内容

astmd4169、astm d4169运输包装测试系统有多少个测试项目按照astmd4169、astm d4169中测试程序A、B、C、D、E、F、G、H、I、J包含10个测试项目又分为18个配送周期,根据不同的包装方式和货运方式依次分为DC1~DC18其中小件参考较多的为DC13,大件带托盘的包…

作者头像 李华
网站建设 2026/5/25 16:05:09

R与Python数据库连接实战(高频问题+5种解决方案全收录)

第一章:R与Python数据库交互概述在数据科学和分析领域,R 与 Python 是两种广泛使用的编程语言。它们各自拥有强大的生态系统,支持从数据清洗、建模到可视化的完整流程。随着项目复杂度的提升,直接操作数据库成为常态,因…

作者头像 李华
网站建设 2026/5/26 3:29:06

Worker 线程中的 函数序列化 模式

工作者线程也可以利用函数序列化来初始化行内脚本。因为函数的toString()方法会返回函数代码的字符串,而函数可以在父上下文中定义但在子上下文中执行。什么是函数序列化?函数序列化是将函数(包括其代码、闭包环境等信息)转换为可…

作者头像 李华