LeetCode Symmetric Tree
来源:互联网 发布:通天西游装备强化数据 编辑:程序博客网 时间:2024/05/29 17:47
Description:
Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center).
For example, this binary tree is symmetric:
1 / \ 2 2 / \ / \3 4 4 3
But the following is not:
1 / \ 2 2 \ \ 3 3
Solution:
两种遍历树节点的方法,第一种是每次都先左后右,另外一种是先右后左。如果每次对应的节点都一样,则表示相同。
import java.util.*;public class Solution {LinkedList<TreeNode> forward = new LinkedList<TreeNode>();LinkedList<TreeNode> backward = new LinkedList<TreeNode>();TreeNode node1, node2;boolean flag1, flag2;public boolean isSymmetric(TreeNode root) {forward.add(root);backward.add(root);while (!forward.isEmpty() && !backward.isEmpty()) {node1 = forward.pop();node2 = backward.pop();flag1 = node1 == null;flag2 = node2 == null;if (flag1 || flag2) {if (flag1 == flag2)continue;elsereturn false;}if (node1.val != node2.val)return false;forward.add(node1.left);forward.add(node1.right);backward.add(node2.right);backward.add(node2.left);}return true;}}
0 0
- Leetcode - Tree - Symmetric Tree
- Leetcode - Tree - Symmetric Tree
- LeetCode[Tree]: Symmetric Tree
- [leetcode][tree] Symmetric Tree
- LeetCode: Symmetric Tree
- [Leetcode] Symmetric Tree
- LeetCode : Symmetric Tree
- leetcode 13:symmetric tree
- [LeetCode] Symmetric Tree - Recursively
- [LeetCode] Symmetric Tree - Iteratively
- [LeetCode] Symmetric Tree
- [LeetCode]Symmetric Tree
- Leetcode:Symmetric Tree
- [Leetcode]Symmetric Tree
- Leetcode: Symmetric Tree
- [leetcode]Symmetric Tree
- LeetCode-Symmetric Tree
- [leetcode] Symmetric Tree
- GCO3.0的图割分割算法应用(三)
- [LeetCode]Search for a Range
- eclipse如何开启/关闭代码提示功能
- java基础------存取大文件数据
- unity如何调用另一个脚本中的变量
- LeetCode Symmetric Tree
- 各种相似度计算的python实现
- shell中的小括号与大括号
- Rust语言
- IOS开发中的CGFloat、CGPoint、CGSize和CGRect
- 2015070403 - EffactiveJava笔记 - 第56条 遵守普遍命名规范(2)
- [转] iOS --- [开发工具] 网络封包分析工具Charles
- MySQL详解(9)----------索引详解
- 4、Django基本数据操作