对于根节点来说,要想整棵树对称,必须满足:
1.左子树的根值 == 右子树的根值
2.左子树的左孩子 和 右子树的右孩子 互为镜像
3.左子树的右孩子 和 右子树的左孩子 互为镜像
给定一棵二叉树的根节点 root。如果这棵树以经过根节点的竖直中轴线为对称轴,左右两部分翻转后能够完全重合,则称该二叉树是轴对称的。请判断给定的二叉树是否具有这一性质。
约束条件:
输入包含一个参数:root,表示一棵二叉树的根节点。
返回一个布尔值。若给定的二叉树是轴对称的,返回 true;否则返回 false。
输入
1
输出
true
说明
该树只有一个根节点,没有左右子树,可以看作左右两侧都为空。经过根节点的竖直中轴线两侧完全对应,因此输出 true。
输入
1 -2 -2 -3 null null -3
输出
true
说明
树结构如图:

左子树的左孩子值为 -3,右子树的右孩子值也为 -3;左子树的右孩子为空,右子树的左孩子也为空。对应位置的值相同或同时为空,因此左右两部分翻转后能够完全重合,输出 true。
输入
1 2 2 3 5 4 3
输出
false
说明
树结构如图:

左子树的左孩子值为 3,右子树的右孩子值也为 3,这一对应位置相同。但左子树的右孩子值为 5,右子树的左孩子值为 4,对应位置节点值不同,因此左右两部分翻转后不能完全重合,输出 false。
输入
1 2 2 null 3 null null
输出
false
说明
树结构如图:

左子树的左孩子为空,右子树的右孩子也为空,这一对应位置相同。但左子树的右孩子值为 3,而右子树的左孩子为空。对应位置一个为空,另一个非空,说明左右结构不对称,因此输出 false。
© CodeFun2000 · 使用条款
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册