27 lines
412 B
Go
27 lines
412 B
Go
package q100
|
|
|
|
type TreeNode struct {
|
|
Val int
|
|
Left *TreeNode
|
|
Right *TreeNode
|
|
}
|
|
|
|
func traverse(p, q *TreeNode) bool {
|
|
if p == nil && q == nil {
|
|
return true
|
|
}
|
|
if p == nil || q == nil {
|
|
return false
|
|
}
|
|
if p.Val != q.Val {
|
|
return false
|
|
}
|
|
return traverse(p.Left, q.Left) &&
|
|
traverse(p.Right, q.Right)
|
|
}
|
|
|
|
func isSameTree(p *TreeNode, q *TreeNode) bool {
|
|
return traverse(p, q)
|
|
}
|
|
|
|
var _ = isSameTree
|