Публикации по теме 'dfs'


Структура графических данных и алгоритм поиска
График как структура данных: Графики — одна из самых полезных и используемых структур данных в информатике, когда речь идет о моделировании реальной жизни. График очень универсален в том смысле, что вы можете отображать некоторые объекты реального мира на графике в виде узлов, а отношения между этими объектами могут быть представлены в виде ребер. Есть две основные части графа: узлы (объекты, данные и т. д.) и ребра (соединения, связи между этими узлами). Мы можем представить граф..

LeetCode 2265. Подсчет узлов, равный среднему значению поддерева — JavaScript-решение
Подсчет узлов, равных среднему значению поддерева — LeetCode Для корня двоичного дерева верните количество узлов, в которых значение узла равно среднему значению … leetcode.com var averageOfSubtree = function(root) { let ans = 0; function dfs(node) { if (node === null) return [0, 0] let [leftSum, leftCount] = dfs(node.left) let [rightSum, rightCount] = dfs(node.right) let sum = leftSum..

DFS: отметка времени на узлах
Как конкурентоспособный программист, человек всегда ищет новые алгоритмы и методы для эффективного решения проблем. Здесь мы собираемся обсудить технику, которая может быть новой для некоторых программистов. Мы также обсудим 3 причины: Что, почему и как? Так что пристегнитесь, поездка будет гладкой. Предварительное условие: Желательно прочитать эту статью, только если вы имеете представление о базовой реализации графа и DFS. Если нет, лучше сначала выучить их, а потом..

Решение C#/Java для вопроса Leetcode: круги друзей (сложность: средняя)
Источник: Круги друзей В классе N учащихся. Некоторые из них друзья, а некоторые нет. Их дружба носит транзитивный характер… leetcode.com В классе N учеников. Некоторые из них друзья, а некоторые нет. Их дружба носит транзитивный характер. Например, если A является прямым другом B, а B прямым другом C, то A является косвенным другом C. , И мы определили круг друзей, это группа студентов, которые являются прямыми или..

День 72: Суммируйте числа от корней до листьев
LeetCode 129. Суммировать числа от корня до листа 8ms Временная сложность: O(n) Пространственная сложность: O(n) Рекурсивный вызов функции class Solution { public: int sumNumbers(TreeNode* root) { int res = 0; if (!root) return res; DFS(root, res, root->val); return res; } void DFS(TreeNode* root, int& res, int cur) { if (!root) return; if (!root->left && !root->right)..

Алгоритмы — DFS и поиск с возвратом
Проблема « SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swcompertamy Есть массив N*N. 1 означает ядро ​​(процессор). 0 означает пустой. Красная линия - питание. Нам нужно подключить как можно больше ядер к блоку питания. Если мы соединили максимально возможное количество жил, нам нужно найти минимальную длину провода. Провода не могут пересекаться друг с другом, а могут быть соединены только по прямой линии...

Как решить проблему с богглом?
Проблема Boggle — интересная задача. И это не так сложно, если вы знакомы с алгоритмом DFS. Вы можете найти описания проблем по ссылке ниже. https://www.geeksforgeeks.org/boggle-find-possible-words-board-characters/ В этой ссылке представлены решения C++, JAVA. Решение Python отсутствует. Я хотел бы предоставить код Python для решения этой проблемы. """ jimmy shen Nov 22, 2019 reference https://www.geeksforgeeks.org/boggle-find-possible-words-board-characters/..