Leetcode 之Same Tree(48)
用递归比较简单,这里用迭代的方式实现。注意什么时候返回true,什么时候返回false。
bool isSameTree(TreeNode *p, TreeNode *q) { stack<TreeNode *> s; s.push(p); s.push(q); while (!s.empty()) { q = s.top(); s.pop(); p = s.top(); s.pop(); //两个都为空 if (!p && !q)return true; //一个为空 if (!p || !q)return false; if (p->val != q->val)return false; s.push(p->left); s.push(q->left); s.push(p->right); s.push(q->right); } return true; }