LeetCode -- Same Tree
Description:
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.
Compare whether two binary trees are identical.
Ideas:
Directly use global members to record whether the two trees are equal from the root node and DFS at the same time.
Implementation Code:
/** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNode left; * public TreeNode right; * public TreeNode(int x) { val = x; } * } */public class Solution { public bool IsSameTree(TreeNode p, TreeNode q) { CompareTree(p, q); return _same; }private bool _same = true;private void CompareTree(TreeNode p , TreeNode q){if(!_same){return;}if(p == null && q == null){return ;}if(p == null && q != null || q == null && p != null || p.val != q.val){_same = false;return;}CompareTree(p.left, q.left);CompareTree(p.right, q.right);}}