Leetcode - Tree - Same Tree
来源:互联网 发布:动态增加的div 调用js 编辑:程序博客网 时间:2024/04/26 12:18
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.
Recursive Solution
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: bool isSameTree(TreeNode *p, TreeNode *q) { // 时间复杂度O(n),平均空间复杂度O(sqrt(n)),BinarySearch Tree空间复杂度为O(lgn) if(p==NULL&&q==NULL) return true; if(p==NULL&&q!=NULL||p!=NULL&&q==NULL) return false; if(p->val==q->val&&isSameTree(p->left,q->left)&&isSameTree(p->right,q->right)) return true; else return false; }};iterative Solution
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: bool isSameTree(TreeNode *p, TreeNode *q) { // 时间复杂度为O(n),平均空间复杂度为O(sqrt(n)) stack<TreeNode*> treeStack; treeStack.push(p); treeStack.push(q); while(!treeStack.empty()&&!treeStack.empty()) { p=treeStack.top(); treeStack.pop(); q=treeStack.top(); treeStack.pop(); if(p==NULL&&q==NULL) continue; if(p&&q&&p->val==q->val) { treeStack.push(p->left); treeStack.push(q->left); treeStack.push(p->right); treeStack.push(q->right); } else return false; } }};
0 0
- Leetcode - Tree - Same Tree
- [leetcode][tree] Same Tree
- [LeetCode] Same Tree、Symmetric Tree
- 【Leetcode】Same Tree (Tree Judge)
- LeetCode-Same Tree & Symmetric Tree
- Symetrict Tree / Same Tree - LeetCode
- LeetCode-- Same Tree & Symmetric Tree
- LeetCode: Same Tree
- LeetCode Same Tree
- [Leetcode] Same Tree
- LeetCode : Same Tree
- [LeetCode] Same Tree
- leetcode 65: Same Tree
- Leetcode 100 Same Tree
- [leetcode] Same Tree
- [LeetCode]Same Tree
- [leetcode]Same Tree
- [Leetcode]Same Tree
- ios实现基于socket tcp/ip的通讯
- Unity3d-摄像机基本介绍
- 用Python和Pygame写游戏-从入门到精通(15)
- iOS精华实例之App启动插画的自定义过度
- 斯坦福IOS开发第五课(第二部分)
- Leetcode - Tree - Same Tree
- 【Leetcode长征系列】Sqrt(x)
- backport
- Berkeley DB Hash、Btree、Queue、Recno对比和选择
- Robot到Rational Functional Tester和Performance Tester
- 【动态树】hdu4897
- eclipse debug 学习心得
- Sysbench安装和基准测试
- 使用HBASE用到的几个filter SingleColumnValueFilter,RowFilter,ValueFilter