Задача: То же дерево

Задача: То же дерево

https://t.me/Golang_google


Условие:

Получив корни двух бинарных деревьев p и q, напишите функцию, проверяющую, совпадают ли они.


Два бинарных дерева считаются одинаковыми, если они структурно идентичны, а узлы имеют одинаковое значение.


Примеры (картинки по порядку):

Ввод: p = [1,2,3], q = [1,2,3]

Вывод: true


Ввод: p = [1,2], q = [1,null,2]

Вывод: false


Ввод: p = [1,2,1], q = [1,1,2]

Вывод: false


Ограничения:

Количество узлов в обоих деревьях находится в диапазоне [0, 100].


Решение%

Go

/**
 * Definition for a binary tree node.
 * type TreeNode struct {
 *     Val int
 *     Left *TreeNode
 *     Right *TreeNode
 * }
 */
func isSameTree(p *TreeNode, q *TreeNode) bool {
 if p==nil || q==nil { return p==q }
 return p.Val==q.Val && isSameTree(p.Right,q.Right) && isSameTree(p.Left,q.Left)
}



Report Page