「这是我参与11月更文挑战的第17天,活动详情查看:2021最后一次更文挑战」
100. 相同的树
题目描述
给你两棵二叉树的根节点 p
和 q
,编写一个函数来检验这两棵树是否相同。
如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。
示例 1:
1 | css复制代码输入: p = [1,2,3], q = [1,2,3] |
示例 2:
1 | css复制代码输入: p = [1,2], q = [1,null,2] |
示例 3:
1 | css复制代码输入: p = [1,2,1], q = [1,1,2] |
解析
- 递归法
- 确定递归函数的参数与返回值
bool traversal(TreeNode *P,TreeNode *q)
- 确定终止递归的条件
- 两个节点非空且值相等才进行递归
- 确定单层递归的逻辑
- 判断两个节点的值是否相等
- 确定递归函数的参数与返回值
- 迭代法
- 思路相同
递归法
1 | c++复制代码// 递归法 |
迭代法
1 | c++复制代码// 迭代法 |
本文转载自: 掘金