//not sure if it is correct
bool isomorphic(struct Node* root1,struct Node* root2)
{
if(root1 root2->value)
return ( isomorphic(root1->left,root2->left) &&
isomorphic(root1->right,root2->right)
isomorphic(root1->right,root2->left) &&
isomorphic(root1->left,root2->right)
);
else return false;
}