Публикации по теме 'union-find'


Союз найти снова
https://leetcode.com/contest/weekly-contest-106/problems/minimize-malware-spread/ Союз находит решение (1900 мс) 928. Свести к минимуму распространение вредоносных программ II https://leetcode.com/contest/weekly-contest-107/problems/minimize-malware-spread-ii/ используя объединение, найденное для обоих 1) без удаления каких-либо узлов 2) удаление одного узла позволит избежать того, сколько узлов останется незараженным: на этом этапе мы знаем, что если мы сохраним узел не..

Вопросы по теме 'union-find'

Избегайте IORefs в чистом коде
Я заметил, что Data.UnionFind использует монаду IO для предоставления указателей через IORefs. Я думаю, что все с радостью вызывают unsafePerformIO при локальном использовании в чистом коде, поскольку структура данных так хорошо понятна, но......
880 просмотров

Взвешенное быстрое объединение с алгоритмом сжатия пути
Существует алгоритм «Взвешенное быстрое объединение со сжатием пути». Код: public class WeightedQU { private int[] id; private int[] iz; public WeightedQU(int N) { id = new int[N]; iz = new int[N];...
13343 просмотров
schedule 22.10.2023

Установить алгоритм объединения с использованием вектора в C++
Я использую только std::vector в этой задаче, и я могу гарантировать отсутствие дубликатов в каждом векторе (но в каждом векторе нет никакого порядка). Как мне объединить векторы, которые у меня есть? Пример: Если у меня есть следующие...
9824 просмотров
schedule 22.08.2022

Подсчитайте, сколько различных векторов осталось после объединения
Я использую только std::vector в этой задаче, и каждый вектор упорядочен без дубликатов. Теперь я хочу объединить векторы с одинаковыми номерами. Таким образом, 2 3 может быть объединено с 3 4 5, но не с 4 5 или 1 5. Пример: Если у меня есть...
154 просмотров
schedule 22.07.2023

Непересекающаяся операция множества Find_Set(x) с использованием связанного списка
Речь идет о наивном алгоритме Union-Find, использующем представление непересекающихся множеств в виде связанного списка: операция Find_Set(x) возвращает указатель на представителя множества, содержащего элемент x. Для этого требуется O(1) время,...
715 просмотров
schedule 30.01.2023

Работа с алгоритмами Union-Find с большим количеством объектов
У меня проблема с (больше не со stackoverflow (хе-хе)) алгоритмом поиска при попытке реализовать алгоритм структуры UnionFind со сжатием пути. У меня есть стандартный массив целых чисел, массив может быть довольно большим -> он отлично работает до...
1244 просмотров

Почему сжатие пути не меняет ранг в UnionFind?
Я смотрю на реализацию UnionFind с объединением по рангу и сжатию пути отсюда http://en.wikipedia.org/wiki/Disjoint-set_data_structure#Disjoint-set_forests (это почти тот же псевдокод, что и в CLRS) и не понимаю, почему сжатие пути не меняет ранг....
1228 просмотров
schedule 18.06.2023

Оптимизация для поиска всех слабо связанных компонентов в ориентированном графе с использованием алгоритма быстрого поиска (Java)
Я пытаюсь улучшить свое решение для поиска всех слабо связанных компонентов в ориентированном графе с использованием алгоритма Quick-Find . Постановка задачи Имея список DirectedGraphNode , найдите все острова (т.е. компоненты со слабой...
743 просмотров

Применение алгоритма Union+Find (непересекающийся набор)
Постановка проблемы: Уравнения задаются в формате A / B = k , где A и B — переменные, представленные в виде строк, а k — вещественное число (число с плавающей запятой). Учитывая некоторые запросы, вернуть ответы. Если ответ не...
416 просмотров
schedule 29.06.2022

Как я могу реализовать алгоритм Union-Find?
Я пытаюсь реализовать алгоритм Union-Find, но все реализации, которые я искал, используют целые числа. Мне нужно реализовать алгоритм, чтобы я мог вызывать методы union() и connect() следующим образом: union(Vertex v, Vertex, w) -connected(Vertex v,...
67 просмотров

Псевдокод алгоритма поиска объединения
Я что-то не понимаю в алгоритме поиска объединения . Концептуально я понимаю, как это работает. Я понимаю, что если два предмета относятся к разным группам, то две группы объединяются в одну. Однако в следующем псевдокоде if rank[xSet] <...
248 просмотров
schedule 20.06.2022

Как связаны динамическая связность и union-find?
Согласно Википедии: Структура динамическая связность  – это структура данных, которая динамически поддерживает информацию о связанных компонентах графа. А также: Структура данных union–find — это структура данных, которая...
278 просмотров
schedule 04.04.2023

Алгоритм поиска объединения не возвращает ожидаемый результат
Я реализовал следующий алгоритм поиска объединения, используя это пример: import numpy as np class UnionFind(object): def __init__(self, edges): self.edges = edges self.n_edges = np.max(edges) + 1 self.data =...
66 просмотров
schedule 22.11.2022

Алгоритм поиска динамического объединения на Прологе
Предположим, у меня есть множества S1,..,Sn, и мы хотим найти наименьшие покрытия C1,..,Cm так, чтобы в каждом покрытии никогда не было непересекающихся компонент связности. например, с наборами S1=[X,Y], S2=[Y,Z], S3=[T] я бы нашел покрытия...
108 просмотров
schedule 10.12.2022