Talk is cheap.
func isSymmetric(root *TreeNode) bool {
if root == nil { return true }
return isSym(root.Left, root.Right)
}
func isSym(p, q *TreeNode) bool {
if p != nil && q != nil {
return p.Val == q.Val && isSym(p.Left, q.Right) && isSym(p.Right, q.Left)
}
return p == q
}