题目:
给你两棵二叉树的根节点
p和q,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。
来源:力扣(LeetCode)
链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
示例:
示例 1:
输入:p = 1,2,3, q = 1,2,3
输出:true
示例 2:
输入:p = 1,2, q = 1,null,2
输出:false
示例 3:
输入:p = 1,2,1, q = 1,1,2
输出:false
解法:
广度遍历两棵树,空用"#"表示,判断便利结果是否相等。
知识点:
**1.BFS:**从上到下,从左到右,用队实现。
代码:
python# Definition for a binary tree node. # class TreeNode: # def __init__(self, val=0, left=None, right=None): # self.val = val # self.left = left # self.right = right class Solution: def isSameTree(self, p: Optional[TreeNode], q: Optional[TreeNode]) -> bool: queue_p = [p] result_p = [] while queue_p: cur = queue_p.pop(0) if cur: result_p.append(cur.val) queue_p.append(cur.left) queue_p.append(cur.right) else: result_p.append('#') queue_q = [q] result_q = [] while queue_q: cur = queue_q.pop(0) if cur: result_q.append(cur.val) queue_q.append(cur.left) queue_q.append(cur.right) else: result_q.append('#') return result_p == result_q
力扣:100. 相同的树(Python3)
恽劼恒2023-09-19 17:03
相关推荐
apocelipes9 小时前
常用编程语言和库的正则表达式性能对比HjhIron11 小时前
面试常客:字符串算法从入门到进阶用户83562907805111 小时前
使用 Python 在 PDF 中创建与管理书签吴佳浩12 小时前
DeepSeek DSpark:Confidence-Scheduled Speculative Decoding 技术解析触底反弹13 小时前
🧠 搞懂 Token,才算真正入门大模型——从分词原理到 Embedding 语义实战MeixianAgent15 小时前
Python 回测数据入口怎么验?历史 K 线入库前先做 5 个检查vivo互联网技术18 小时前
ICLR 2026 | 基于后验采样的图像恢复方法LearnIR:人脸去阴影、去雾咕白m62519 小时前
用 Python 实现一键批量查找与替换 Excel 数据浮生望19 小时前
JS字符串与回文算法:从包装类到双指针的面试进阶之路黄敬峰19 小时前
面试必刷:从JS底层包装类到双指针,彻底搞懂字符串与回文算法

