и посмотреть медиа
JavaScript | LeetCode
и посмотреть медиа
LeetCode задачи и решения на JavaScript. Идеально для подготовки к собеседованиям и улучшения навыков алгоритмов.
LeetCode задачи и решения на JavaScript. Идеально для подготовки к собеседованиям и улучшения навыков алгоритмов.
AI bot for text-to-speech and voice cloning in Telegram. Create audio using neural network quickly and easily.
Канал посвящен решениям задач LeetCode на JavaScript. Здесь собраны примеры кода для популярных алгоритмических задач, которые часто встречаются на собеседованиях. Материалы помогут освоить структуры данных, сортировки, динамическое программирование и другие ключевые темы. Подходит для junior и middle разработчиков, желающих прокачать навыки.
Задача: 652. Find Duplicate Subtrees Сложность: medium Если задан корень бинарного дерева, верните все дублирующие поддеревья. Для каждого вида дублирующих поддеревьев достаточно вернуть корневой узел любого из них. Два дерева являются дублирующими, если они имеют одинаковую структуру с одинаковыми значениями узлов. Пример: Input: root = [1,2,3,4,null,2,4,null,null,4] Output: [[2,4],[4]] 👨💻 Алгоритм: 1⃣Выполните обход дерева и используйте сериализацию для представления каждого поддерева. 2⃣Храните все сериализованные представления поддеревьев в хэш-таблице и отслеживайте частоту их появления. 3⃣Найдите поддеревья, которые появляются более одного раза, и верните корневые узлы этих поддеревьев. 😎 Решение: function TreeNode(val, left, right) { this.val = (val===undefined ? 0 : val) this.left = (left===undefined ? null : left) this.right = (right===undefined ? null : right) } var findDuplicateSubtrees = function(root) { const count = new Map(); const result = []; const serialize = (node) => { if (!node) return "#"; const serial = `${node.val},${serialize(node.left)},${serialize(node.right)}`; count.set(serial, (count.get(serial) || 0) + 1); if (count.get(serial) === 2) { result.push(node); } return serial; }; serialize(root); return result; }; Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиаOnly registered users can share their opinion.
Be the first to share your impression of this resource!
Galaxy Wallet–handy crypto wallet with supportDeFi. News and updates in the Telegram channel.
Fresh editionsListen ITDiscuss technologies, tools and best practicesIT.