lc-go/solutions/1/q101/solution.go

28 lines
551 B
Go

// Package q101 implements a solution for https://leetcode.com/problems/symmetric-tree/
package q101
type TreeNode struct {
Val int
Left *TreeNode
Right *TreeNode
}
func traverse(left, right *TreeNode) bool {
if left == nil && right == nil {
return true
}
if left == nil || right == nil {
return false
}
if left.Val != right.Val {
return false
}
return traverse(left.Left, right.Right) &&
traverse(left.Right, right.Left)
}
func isSymmetric(root *TreeNode) bool {
return traverse(root.Left, root.Right)
}
var _ = isSymmetric