Я пытаюсь найти определение двоичного дерева поиска, и я постоянно нахожу разные определения.
Некоторые говорят, что для любого заданного поддерева левый дочерний ключ меньше или равен корню.
Некоторые говорят, что для любого данного поддерева правый дочерний ключ больше или равен корню.
И мои старые книги структур данных колледжа говорят, что "каждый элемент имеет ключ, а два элемента не имеют одного и того же ключа".
Существует ли универсальное определение bst? Особенно в отношении того, что делать с деревьями с несколькими экземплярами одного и того же ключа.
EDIT: Возможно, я был неясен, определения, которые я вижу, это
1) left <= корень < вправо
2) слева < root <= right
3) слева < root < правильно, чтобы не существовало дублирующих ключей.