Для начала — что это вообще такое 👇
Бинарное дерево — это структура данных, где у каждого элемента может быть максимум два «ребёнка»: левый и правый.
Примерно так:
8
/ \
3 10
/ \
1 6
Такие структуры используют для поиска, сортировки, хранения и обработки данных. А «развернуть дерево» обычно значит поменять местами левую и правую ветку у каждого узла.
Звучит нормально… пока ты не вспоминаешь, что пришёл устраиваться фронтендером 😅
В реальной работе тебя, скорее всего, ждут:
🎨 интерфейсы
⚛️ React/Vue
🌐 API
📦 сборка проекта
🐛 баги
📱 адаптив
🚀 производительность
Но на собеседовании:
«Вот бинарное дерево. Разверните его за O(n)» 💀
И тут главный спор 💪
С одной стороны, такие задачи проверяют алгоритмическое мышление и умение работать со структурами данных 🧠
С другой — можно идеально переворачивать деревья и при этом не уметь нормально собрать форму с валидацией и состояниями 😄
Получается странная ситуация:
собеседование проверяет не совсем то, чем человек будет заниматься каждый день.
💬 А как вы считаете: алгоритмы на собеседовании фронтендера — полезный фильтр или уже пережиток прошлого? 👀