不考虑数据内容。意味着对应的左子树和右子树都结构相同。
递归解法:
(1)如果两棵二叉树都为空,返回真
(2)如果两棵二叉树一颗为空,另一棵不为空,返回假
(3)如果两棵二叉树都不为空,如果对应的左子树和右子树都同构,返回真,其他返回假
bool StructureCmp(BinaryTreeNode *pRoot1, BinaryTreeNode *pRoot2)
{
if (pRoot1 == NULL && pRoot2 == NULL)
return true;
else if (pRoot1 == NULL || pRoot2 == NULL)
return false;
bool resultLeft = StructrueCmp(pRoot1->lchild, pRoot2->lchild);
bool resultRight = StructrueCmp(pRoot1->rchild, pRoot2->rchild);
return (resultLeft && resultRight);
}