Як ви реалізуєте проблему рюкзака за допомогою жадібного рішення?
Основна ідея жадібного підходу полягає в тому, щоб обчислити співвідношення значення/вага для кожного предмета та сортувати товар на основі цього співвідношення. Потім візьміть предмет із найвищим коефіцієнтом і додайте його в рюкзак, доки ми не зможемо додати наступний предмет цілком, а в кінці додайте наступний предмет якомога більше.
Щоб створити жадібний алгоритм, визначте оптимальну підструктуру або підпроблему в задачі. Потім визначте, що міститиме рішення (наприклад, найбільшу суму, найкоротший шлях тощо). Створіть якийсь ітеративний спосіб проходження всіх підпроблем і створення рішення.
Дробова проблема ранця з використанням алгоритму Greedy: Ефективним рішенням є використання підходу Greedy. Основна ідея жадібного підходу полягає в тому, щоб розрахувати співвідношення прибуток/вага для кожного товару та відсортувати товар на основі цього співвідношення.
Вирішити проблему ранця 0/1 за допомогою грубої сили означає: Обчислити вартість усіх можливих комбінацій предметів у ранці. Відмовтеся від комбінацій, важчих за обмеження ваги рюкзака. Виберіть комбінацію предметів із найбільшою загальною вартістю.
0-1 Ранець не можна вирішити жадібним підходом. Жадібний підхід не забезпечує оптимального рішення в цьому методі.
Наприклад, жадібною стратегією для проблеми комівояжера (яка має високу обчислювальну складність) є наступна евристика: «На кожному кроці подорожі відвідуйте найближче невідвідане місто». Ця евристика не має на меті знайти найкраще рішення, але завершується розумною кількістю кроків; знайти …