leetcode-java-101. Symmetric Tree
来源:互联网 发布:人工智能人才缺口 编辑:程序博客网 时间:2024/05/16 11:58
思路一:
递归:1ms
先判断左右子节点是否相等,不等就返回false
相等则判断左节点的左孩子和右节点的右孩子是否相等,且判断左节点的右孩子和右节点的左孩子是否相等。
思路二:
迭代
public class Solution { public boolean isSymmetric(TreeNode root) { if(root == null) { return true; } else { return isSame(root.left,root.right); } } public boolean isSame(TreeNode left,TreeNode right) { if(left == null && right == null) { return true; } if(left == null || right == null) { return false; } if(left.val != right.val) { return false; } return isSame(left.left,right.right) && isSame(left.right,right.left); } }
public class Solution { public boolean isSymmetric(TreeNode root) { if(root == null) { return true; } Queue<TreeNode> left = new LinkedList<TreeNode>(); Queue<TreeNode> right = new LinkedList<TreeNode>(); if(root.left != null) { left.offer(root.left); } if(root.right != null) { right.offer(root.right); } while(!left.isEmpty() && !right.isEmpty()) { TreeNode l = left.poll(); TreeNode r = right.poll(); if(r == null && l == null) { continue; } if(r == null || l == null) { return false; } if(l.val != r.val) { return false; } left.offer(l.left); left.offer(l.right); right.offer(r.right); right.offer(r.left); } if(left.isEmpty() && right.isEmpty()) { return true; } else { return false; } }}
0 0
- leetcode-java-101. Symmetric Tree
- 【Leetcode-Java】101.Symmetric Tree
- LeetCode-101. Symmetric Tree(Java)
- [Leetcode] Symmetric Tree (Java)
- [LeetCode][Java] Symmetric Tree
- leetcode:Symmetric Tree 【Java】
- Leetcode:101. Symmetric Tree(JAVA)
- [leetcode]101. Symmetric Tree@Java解题报告
- LeetCode 101. Symmetric Tree
- [LeetCode]101.Symmetric Tree
- 【LeetCode】101.Symmetric Tree
- [Leetcode] 101. Symmetric Tree
- LeetCode --- 101. Symmetric Tree
- [leetcode] 101.Symmetric Tree
- LeetCode : 101. Symmetric Tree
- [leetcode]101.Symmetric Tree
- Leetcode 101. Symmetric Tree
- 101. Symmetric Tree LeetCode
- Androguard获取Java源码的方法及问题汇总
- css引用方式
- Spring常用注解
- 使用httpClient请求的网络数据
- Linux CPUFreq
- leetcode-java-101. Symmetric Tree
- 深入理解CSS溢出overflow
- microsoft Sourcesafe 客户端使用
- Half精度解析
- 非ARC下的开发-----retain、assign的使用详解
- June's English Summary
- 设置Myeclipse中的代码格式化、注释模板及保存时自动格式化
- 224.leetcode Basic Calculator(hard)[后缀表达式 栈]
- 一起talk C栗子吧(第一百六十九回:C语言实例--再谈内置宏)