Data is structured as follows:
typedef struct TreeNode
{
char c;
TreeNode *leftchild;
TreeNode *rightchild;
}
Procedures are as follows:
int compTree(TreeNode *Tree1,TreeNode *Tree2 )
{
if((Tree1==NULL) != (Tree2==NULL))
return 1;
if((Tree1==NULL) && (Tree2==NULL))
return 0;
if(Tree1->c != Tree2->c)
return 1;
return (compTree(Tree1->left,Tree2->left) & compTree(Tree1->right,Tree2->right) |
(compTree(Tree1->left,Tree2->right) & compTree(Tree1->right,Tree2->left));
}