root двоичного дерева. Проверьте, является ли оно двоичным деревом поиска.
Дерево считается деревом поиска, если для каждой вершины выполнено: все значения в её левом поддереве строго меньше значения вершины, а все значения в правом поддереве строго больше. Обратите внимание: сравнивать нужно со всеми потомками, а не только с непосредственными детьми.
Верните True, если дерево — дерево поиска, и False иначе.root=tree_node([10, 4, 15, 1, 7, 12, 20]) → True
Слева от каждой вершины только меньшие значения, справа — только большие. Это дерево поиска.
root=tree_node([10, 4, 15, None, 11]) → False
11 правее вершины 4 — это допустимо, но она лежит в левом поддереве корня 10, а 11 > 10. Условие нарушено.
root=tree_node([6, 6]) → False
Значения должны быть строго меньше, а здесь левый ребёнок равен корню.
Node.val ≤ 2³¹ − 1root=tree_node([10, 4, 15, 1, 7, 12, 20])
True
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 100 тестов на сервере, включая скрытые.