Given binary trees, write a function to check if they is equal or not.
The binary trees is considered equal if they is structurally identical and the nodes has the same value.
In short, to determine whether two binary trees are equal, here can be judged by recursion, the topic is relatively simple and straightforward code bar. It is important to note that when the left subtree is judged to be unequal, you can return to false without having to wait for both left and right sub-trees to go through. This saves you time. The operating time is 3 Ms.
/** * 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 &&!q)return true;Else if(P &&!q)return false;Else if(!p && Q)return false;if(p->Val! = q->Val)return false;Else{if(!issametree (P->left, Q->left))return false;if(!issametree (P->right, Q->right))return false; }return true; }};
Leetcode (5) Same Tree