Чому ми не можемо знайти найкоротші шляхи з від’ємними вагами, просто додавши константу, щоб усі ваги були позитивними?


12

Зараз я читаю вступ до алгоритмів і дійшов до алгоритму Джонсона, який залежить від того, щоб переконатися, що всі шляхи позитивні.

algo залежить від пошуку нової вагової функції (w '), яка є позитивною для всіх ребер і зберігає правильність найкоротших співвідношень шляхів.

Це робиться шляхом обчислення значень h (s), h (d), що додаються до w вихідного значення.

Моє запитання: чому б просто не знайти найменший ш у графіку та додати його до всіх ребер? це задовольнить обидві умови і вимагатиме менших розрахунків.


2
Ви намагалися довести свою претензію чи знайшли зустрічний приклад? Підказка: ваша інтуїція неправильна. (Громада, я впевнений, що це дублікат. Ви можете його знайти?)
Рафаель

@Raphael Я майже впевнений, що це дуп, але я подумав, що відповісти на нього буде швидше, ніж знайти дупу.
Девід Річербі

@Raphael Вибачте, оскільки я не зміг сформулювати своє запитання у конкретному форматі, я не зміг його знайти.
Містер,

1
У нас є питання, яке вже пояснює це , але воно було позначене як копія іншого питання, яке досить заплутане і важко зрозуміле, і яке поєднує в собі кілька різних питань разом . Тому я вважаю, що це питання має значення над тим, що ми мали раніше. Якщо ви хотіли, я гадаю, що ми могли б націлити цілі на дуп (закрити їх як копію цього замість того, на що вони вказують на даний момент).
DW

Відповіді:


23

Додавання ваги до кожного краю додає більше ваги довгим шляху, ніж короткі. (Довгий в сенсі мати багато ребер.)

2ab31256


0

Збільшення ваги кожного краю на однакову кількість не обов'язково збільшує кожну стежку на однакову кількість відстані. Швидше, збільшення шляхів часто непропорційне, що залежить від того, скільки країв має шлях.


2
Цей ефект уже згадується в іншій відповіді.
Yuval Filmus

Я просто перефразовував це до заплутаності.
Пендехосен
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.