![]() |
|
|
![]()
|
|
| ksili |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2069 Регистрация: 3.11.2005 Где: Красноярск Репутация: 2 Всего: 17 |
Кто-нибудь знает определение или объяснение сути жадного алгоритма. Самое общее, без привязки к конкретной задаче.
Я тут подумал. По-моему любой жадный алгоритм является недетерминированным. Т.е. имеет на некоторых шагах несколько возможных путей развития, но перебирает не все, а только один и выбирает его на основе оптимистичной стратегии -------------------- Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с) |
|||
|
||||
| SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 6 Всего: 74 |
Вроде не верно. Если бы он не перебирал все пути, он не был бы жадным...
А ты прочитай в Кормене про жадные алгоритмыю целая глава есть. -------------------- Всем добра |
|||
|
||||
| ksili |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2069 Регистрация: 3.11.2005 Где: Красноярск Репутация: 2 Всего: 17 |
То что он не перебирает все пути - это 100%. Именно из-за этого он может получать не оптимальное решение. Зато работает быстрее (при правильной реализации). Пример:
Пусть дана матрица A с действительными элементами, где 10 8 4 A = 6 7 6 5 6 4 и сформулируем следующую оптимизационную задачу. Найти такое подмножество элементов S матрицы A, для которого выполнены условия: а) каждый столбец и каждая строка матрицы содержит не более одного элемента множества S, б) сумма выбранных элементов максимальна. Будем решать поставленную задачу при помощи жадного алгоритма, который на каждом шаге выбирает наибольший элемент из возможных. Получим решение S = {a11, a22, a33} = {10, 7, 4}, причём 10+7+4 = 21. Но это не максимальное решение, т.к. решение S’ = {a11, a23, a32} = {10, 6, 6} даёт 10+6+6 = 22. А что за Кормен? Какое полное название? -------------------- Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с) |
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |