Ц
Цель самурая (404)
@SamuraisGoal361 подп.
56просмотров
15.5%от подписчиков
24 июня 2025 г.
📷 ФотоScore: 62
🌳&nbsp;Бинарное дерево поиска&nbsp;(BST)&nbsp;— кладём числа «как в огороде» Садовник‑самурай сортирует бамбуковые палки по длине. Он втыкает первую палку в землю — это центр грядки. Любая короче идёт влево, длиннее — вправо. Для каждой новой палки правило повторяется: слева короче, справа длиннее. Через минуту получилась «живая диаграмма», в которой нужную длину легко найти. Вот это и есть бинарное дерево поиска. Как оно работает на пальцах 1. Первый элемент&nbsp;— «корень». 2. Всё, что меньше, кладём слева; больше — справа. 3. Для любой «ветки» правило то же самое. Так грядка растёт в ширину и глубину, а не в одну длинную цепочку. Поэтому поиск «есть ли палка 42&#8239;см?» занимает в среднем log₂(n) шагов, а не n, как при простом переборе. Мини‑глоссарий • Корень — первая палка. • Ветвь/узел — любая палка с возможными «детьми» слева/справа. • Лист — палка без детей. Пример кода на PHP // вставка в BST function insert(?array &&#036;tree, int &#036;value): void { if (&#036;tree === null) { // пустое место — сажаем палку &#036;tree = ['v'=>&#036;value,'l'=>null,'r'=>null]; return; } &#036;branch = (&#036;value < &#036;tree['v']) ? 'l' : 'r'; insert(&#036;tree[&#036;branch], &#036;value); // рекурсивно дальше } Идея та же для поиска: идём влево или вправо, пока не найдём или не упремся в пустоту. Плюсы • Быстрый поиск/вставка при «хорошем» дереве — O(log&#8239;n). • Данные автоматически держатся упорядоченно. Минусы • Если вставлять уже отсортированные данные, дерево перекосится и станет медленным (O(n)). • Нужно следить за балансировкой или брать готовые «самобалансирующиеся» варианты (AVL, Red‑Black). Когда брать BST ✅ Нужно хранить и искать по числовому ключу. ✅ Хотите быстро выводить данные по возрастанию. 🚫 Приходят данные уже отсортированные — лучше хеш‑таблица или сбалансированное дерево. Вопрос к читателям: встречали ли вы ситуацию, когда поиск «бинаркой» спас проект? Расскажите в комментах! #алгоритмы&nbsp;#BST&nbsp;#кодСамурая
56
просмотров
2084
символов
Да
эмодзи
Да
медиа

Другие посты @SamuraisGoal

Все посты канала →
🌳&nbsp;Бинарное дерево поиска&nbsp;(BST)&nbsp;— кладём числ — @SamuraisGoal | PostSniper