要判斷給定的兩顆二叉樹是否相同,就遞歸遍歷它們的所有子節點並進行判斷代碼如下:
//判斷兩顆樹是否相同
public bool IsSameTree(TreeNode p, TreeNode q)
{
if (p == null && q == null) return true;
if (p != null && q == null) return false;
if (p == null && q != null) return false;
if (p.val != q.val) return false;
return IsSameTree(p.left,q.left) && IsSameTree(p.right, q.right);
}
public class TreeNode {
public int val;
public TreeNode left;
public TreeNode right;
public TreeNode(int x) {
val = x;
}
}