Я пытаюсь ответить на некоторые верные/ложные вопросы. Я начинаю беспокоиться, когда отвечаю на многие из них верно... Предположим, что все графики неориентированы и не имеют различные веса. сильный>. Отрицательные веса должны быть в порядке.
Qa) Если в G есть цикл с единственным самым тяжелым ребром e, то e не может быть частью ни одного MST.
Мой ответ верен. Например, у нас есть граф с узлами A, B, C, D, E.
AB = 1
BC = 2
BD = 3
CD = 100
DE = 4
Как видите, BCD — это цикл. Мой аргумент заключается в том, что, поскольку это цикл, мы всегда можем избежать уникального компакт-диска с самым тяжелым краем, выбрав другие маршруты. Следовательно, это правда. Является ли мой аргумент разумным (достаточно)?
Qb) Дерево кратчайших путей, вычисленное алгоритмом Дейкстры, обязательно является MST.
Мой ответ верен, но мой инстинкт подсказывает мне, что что-то не так. Что ж... Алгоритмы Disjkstra и Prim — жадные алгоритмы. Они оба каждый раз выбирают самое легкое взвешенное преимущество. Существуют ли случаи, когда дерево кратчайшего пути НЕ является минимальным остовным деревом? Мне на самом деле трудно понять разницу между этими двумя парнями.
Qc) Алгоритм Прима работает с ребрами с отрицательным весом.
Мой ответ верен. Потому что так говорит вики... :p Алгоритм заключается в поиске ребра с наименьшей стоимостью среди всех ребер. Таким образом, отрицательное взвешенное преимущество не должно иметь значения, не так ли? Но как насчет отрицательно взвешенного цикла?
Qd) Если в G есть цикл с единственным самым легким ребром e, то e должно быть частью каждого MST.
Мой ответ верен. Нам нужно получить доступ ко всем узлам в MST. Например, в цикле длины 3 мы всегда можем обойти все узлы этого цикла за 2 шага. Если есть уникальное легчайшее ребро, мы наверняка выберем его в нашем MST.
Являются ли мои претензии обоснованными? Может быть, они недостаточны? Так есть предложения?