LeetCode-100.Same Tree
来源:互联网 发布:通信网络维护简介 编辑:程序博客网 时间:2024/06/03 21:51
Given two binary trees, write a function to check if they are equal or not.
Two binary trees are considered equal if they are structurally identical and the nodes have the same value.
/**
* Definition for a binary tree node.
* public class TreeNode {
* public int val;
* public TreeNode left;
* public TreeNode right;
* public TreeNode(int x) { val = x; }
* }
*/
1、递归解法
public bool IsSameTree(TreeNode p, TreeNode q) { if(p == null && q == null) return true; if(p == null || q == null) return false; if(p.val == q.val) return IsSameTree(p.left, q.left) && IsSameTree(p.right, q.right); return false; }2、非递归
public bool IsSameTree(TreeNode p, TreeNode q) { if (p == null && q == null) return true; if (p == null || q == null) return false; Stack<TreeNode> stack = new Stack<TreeNode>(); stack.Push(p); stack.Push(q); while (stack.Count!=0) { TreeNode tnP = stack.Pop(); TreeNode tnQ = stack.Pop(); if (tnP.val != tnQ.val) return false; if ((tnP.left==null&&tnQ.left!=null) || (tnP.left != null && tnQ.left == null)) return false; if ((tnP.right == null && tnQ.right != null) || (tnP.right != null && tnQ.right == null)) return false; if (tnP.left != null && tnQ.left != null) { stack.Push(tnP.left); stack.Push(tnQ.left); } if (tnP.right != null && tnQ.right != null) { stack.Push(tnP.right); stack.Push(tnQ.right); } } return true; }
0 0
- [LeetCode]100.Same Tree
- LeetCode 100. Same Tree
- 【LeetCode】100.Same Tree
- [Leetcode] 100. Same Tree
- [Leetcode] 100. Same Tree
- LeetCode --- 100. Same Tree
- LeetCode 100. Same Tree
- [leetcode] 100.Same Tree
- leetCode 100. Same Tree
- [LeetCode]100. Same Tree
- 100. Same Tree LeetCode
- LeetCode 100. Same Tree
- LeetCode 100. Same Tree
- [LeetCode]100. Same Tree
- 【LeetCode】100. Same Tree
- leetcode 100. Same Tree
- leetcode 100. Same Tree
- 【Leetcode】100. Same Tree
- [Leetcode] Single Number III
- Cobar使用文档(可用作MySQL大型集群解决方案)
- linux下C/C++程序简单调试
- .Net使用Oracle驱动访问数据库
- ASP.NET企业项目管理系统源码(适用于PM及PMO等)
- LeetCode-100.Same Tree
- RxJava源码走读之map
- 【bzoj3990】【SDOI2015】【排序】【dfs】
- POJ 3254 Corn Fields【状压dp】
- vector中的元素删除
- 我发现了CSDN的一个大BUG
- CAS 整合/v1/tickets/{TGT id} 与/serviceValidate ,生成ST时直接验证其合法性。
- echart学习使用记录1
- SOA面试题