bool isUnivalTree(struct TreeNode *root)
{
if (root == NULL)
return 1;
if (root->left)
{
if (root->left->val != root->val)
return 0;
}
if (root->right)
{
if (root->right->val != root->val)
return 0;
}
return isUnivalTree(root->left) && isUnivalTree(root->right);
}