#792. 对称二叉树
对称二叉树
题目描述
给定一棵二叉树,请编程判断是否是对称二叉树。对称二叉树的定义:将这棵二叉树所有节点的左右子树交换,新树和原树对应位置的结构相同且结点值相等,这样的二叉树称为对称二叉树。只有给定的树是对称二叉树时,才返回true;否则返回false。
输入格式
第一行一个正整数 ,表示给定的树的节点的数目,规定节点编号1~n ,其中节点 1 是树根。 第二行 n个正整数,用一个空格分隔,第 i 个正整数代表节点i的值。 接下来 n 行,每行两个正整数li、ri,分别表示节点 i 的左右孩子的编号。如果不存在左 / 右孩子,则以 -1 表示。两个数之间用一个空格隔开。
输出格式
是对称二叉树输出“true”,否则输出“false”。
样例
输入样例 1
7
1 2 2 3 4 4 3
2 3
4 5
6 7
-1 -1
-1 -1
-1 -1
-1 -1
输出样例 1
true
输入样例 2
7
1 2 3 2 4 4 3
2 4
3 5
-1 -1
6 7
-1 -1
-1 -1
-1 -1
输出样例 2
true
输入样例 3
1
3
-1 -1
输出样例 3
true