老卫带你学---leetcode刷题(101. 对称二叉树)

101. 对称二叉树

问题:

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

bash 复制代码
输入:root = [1,2,2,3,4,4,3]
输出:true
bash 复制代码
输入:root = [1,2,2,null,3,null,3]
输出:false
bash 复制代码
提示:

树中节点数目在范围 [1, 1000] 内
-100 <= Node.val <= 100

解决:

要寻找对称,那只需要递归,然后让左右相等即可

go 复制代码
func isSymmetric(root *TreeNode) bool {
	if root == nil {
		return true
	}
	return dfs(root.Left, root.Right)
}

func dfs(l, r *TreeNode) bool {
	if l == nil && r == nil { //二者都是nil,对称返回true
		return true
	}
	if l == nil || r == nil { //二者有一个为nil,另一个非nil,返回false
		return false
	}
	if l.Val != r.Val {//二者值不同,返回false
		return false
	}
	return dfs(l.Left, r.Right) && dfs(l.Right, r.Left)
}
相关推荐
吃着火锅x唱着歌4 分钟前
LeetCode 2110.股票平滑下跌阶段的数目
数据结构·算法·leetcode
小猪咪piggy2 小时前
【算法】day2 双指针+滑动窗口
数据结构·算法·leetcode
hn小菜鸡11 小时前
LeetCode 3643.垂直翻转子矩阵
算法·leetcode·矩阵
YuTaoShao13 小时前
【LeetCode 每日一题】3000. 对角线最长的矩形的面积
算法·leetcode·职场和发展
愚润求学14 小时前
【贪心算法】day8
c++·算法·leetcode·贪心算法
岁忧19 小时前
(LeetCode 每日一题) 3541. 找到频率最高的元音和辅音 (哈希表)
java·c++·算法·leetcode·go·散列表
·云扬·1 天前
【Leetcode hot 100】101.对称二叉树
算法·leetcode·职场和发展
睡不醒的kun1 天前
leetcode算法刷题的第三十二天
数据结构·c++·算法·leetcode·职场和发展·贪心算法·动态规划
共享家95272 天前
经典动态规划题解
算法·leetcode·动态规划