* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right (right) {} * }; */ classSolution{ public: boolisSameTree(TreeNode*p,TreeNode*q) { } }; 已存储 行1,列 1 运行和提交代码需要登录 Case 1
也可以使用中序遍历的迭代写法,对应之前那道Binary Tree Inorder Traversal,参见代码如下: 解法三: classSolution {public:boolisSameTree(TreeNode* p, TreeNode*q) { stack<TreeNode*>st;while(p || q || !st.empty()) {while(p ||q) {if((p && !q) || (!p && q) || (p->val != q-...
* int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * }*/classSolution {publicbooleanisSameTree(TreeNode p, TreeNode q) {if(p ==null&& q ==null) {//base case是两个节点都为空returntrue; }if(p ==null|| q ==null) {returnfalse; }returnp.val ...
AI代码解释 classSolution{publicbooleanisSameTree(TreeNode p,TreeNode q){if(p==null)returnq==null;returnq!=null&&p.val==q.val&&isSameTree(p.left,q.left)&&isSameTree(p.right,q.right);}} 3、时间复杂度 时间复杂度 :O(min(m,n)) 其中m和n分别是两个二叉树的节点数,对两个二叉树同事进...
对于后序遍历的迭代写法,貌似无法只是用一个栈来做,因为每次取出栈顶元素后不立马移除,这样使用一个栈的话两棵树结点的位置关系就会错乱,分别使用各自的栈就好了,对应之前那道 Binary Tree Postorder Traversal,参见代码如下: class Solution { public: bool isSameTree(TreeNode* p, TreeNode* q) { stack<Tree...
题号:100 难度:简单 https://leetcode-cn.com/problems/same-tree/ 给你两棵二叉树的根节点p和q,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例1: 输入: 1 1 / \ / \ 2 3 2 3...
* 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) { if(!p && !q) { return true; } else if(p && q) { return ...
publicclassLeetCode_100 {publicstaticbooleanisSameTree(TreeNodep, TreeNodeq) {if (p==null&&q==null) {returntrue; }if ((p==null&&q!=null) || (p!=null&&q==null)) {returnfalse; }returnp.val==q.val&&isSameTree(p.left, q.left) &&isSameTree(p.right, q.right); }publ...
//先比较根节点 if(p.val!= q.val) return false; //递归比较左子树和右子树 return isSameTree(p.left, q.left) && isSameTree(p.right, q.right); } } 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17....
* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right (right) {} * }; */ class Solution { public: bool isSameTree(TreeNode* p, TreeNode* q) { } }; 已存储 行1,列 1 运行和提交代码需要登录 Case 1Case 2Case 3 p = [1,2,3] 1 2 3 q = [...