Same Tree

来源:互联网 发布:淘宝网信用卡支付 编辑:程序博客网 时间:2024/06/06 13:02
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) {        bool ret1, ret2;                if (p==NULL && q!=NULL) {            return false;        } else if (p!=NULL && q==NULL) {            return false;        } if (p==NULL && q==NULL) {            return true;        }                if (p->val != q->val) {            return false;        }                ret1 = isSameTree(p->left,q->left);        ret2 = isSameTree(p->right,q->right);                if (ret1 == false || ret2 == false) {            return false;        }        return true;            }};

递归判断每个节点是否相等





0 0
原创粉丝点击