本文共 714 字,大约阅读时间需要 2 分钟。
问题:
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 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) { if(p != NULL && q != NULL) return (p->val == q->val) && isSameTree(p->left, q->left) && isSameTree(p->right, q->right); else if(p == NULL && q == NULL) return true; else return false; }};
转载地址:http://eztsi.baihongyu.com/