Говорят, что алгоритм Kruskal для построения MST является жадным, но алгоритм выбирает глобальный минимум и вместо локального минимума в отличие от алгоритма Прима. Может кто-нибудь объяснить, как алгоритм Крускаля считается жадным?Как алгоритм Крускаля жадный?
ответ
Что мы делаем в Крускале? Сначала отсортируйте края по их весу. Тогда мы выберем это ребро, имеющее минимальный вес. Мы добавляем это ребро, если оно не делает циклов. Таким образом, мы идем вперед жадно. Так что это жадный подход. :)
Жадный подход называется жадным, потому что он принимает оптимальный выбор на каждом этапе ожидания, что даст полное оптимальное решение.
Это жадный алгоритм, потому что вы выбрали объединение двух наборов вершин на каждом шаге в соответствии с минимальным весом, вы выбрали край, который выглядит оптимальным на данный момент. Это жадный шаг, и, следовательно, алгоритм считается жадным.
в псевдокоде из википедии (прилагается), жадный шаг - по выбору (u,v)
, который является самым низким взвешенным краем, который соединяет два несвязанных компонента.
KRUSKAL(G):
1 A = ∅
2 foreach v ∈ G.V:
3 MAKE-SET(v)
4 foreach (u, v) ordered by weight(u, v), increasing:
5 if FIND-SET(u) ≠ FIND-SET(v):
6 A = A ∪ {(u, v)}
7 UNION(u, v)
8 return A
- 1. Как превратить алгоритм Прима в алгоритм Крускаля?
- 2. Жадный алгоритм: робот
- 3. Как реализовать Жадный алгоритм поиска
- 4. Жадный алгоритм: Интервальная раскраска
- 5. жадный алгоритм набора крышка
- 6. Жадный алгоритм - амортизирующая стоимость
- 7. жадный алгоритм псевдокод
- 8. CS50 жадный алгоритм
- 9. Жадный условный алгоритм
- 10. Жадный алгоритм для следующего
- 11. Жадный алгоритм - римские цифры
- 12. Жадный алгоритм, NumPy, матрица, эксплантация
- 13. Как доказать этот жадный алгоритм как оптимальный?
- 14. Жадный алгоритм для двудольного сопоставления
- 15. Жадный алгоритм java на карте
- 16. жадный алгоритм матрица 0 \ 1
- 17. Жадный алгоритм Метод Java/firstFit
- 18. Line Обертывание Алгоритм: Жадный подход
- 19. Изменение алгоритма Крускаля
- 20. Жадный алгоритм для рюкзака в java
- 21. C - Мой жадный алгоритм не работает CS50x
- 22. Жадный или динамический алгоритм для выбора подмножества
- 23. жадный алгоритм (с монетами) в C
- 24. Жадный алгоритм для смены монет C++
- 25. Есть ли идея оптимизировать жадный алгоритм?
- 26. Design жадный алгоритм для этого preblem
- 27. Сложность алгоритма Крускаля
- 28. жадный и жадный в модуле
- 29. Минимальное связующее дерево с алгоритмом Крускаля
- 30. жадный, не жадный, все-Жадный Matching в C# Regex