MST – Вопрос с циклом длиной 6 или меньше

Я столкнулся с вопросом, который пытался решить самостоятельно, но не нашел достаточно удовлетворительного ответа.

Вопрос:

Дан неориентированный граф G = (V, E) с весовой функцией w: E->R такой, что что не существует двух ребер одинакового веса, учитывая, что G не содержит длины цикла 6 или короче.

Пусть e4 — четвертое ребро веса, поэтому имеет ровно 3 ребер имеет меньший вес, чем e4.

Докажите или опровергните: каждое MST группы G содержит e4.

Моя попытка:

Предположим, от противного, что существует MST группы G, не содержащий ребра e4.

Пусть T — MST группы G, не содержащий e4.

Учитывая, что существует ровно 3 ребра с весом меньше веса e4, обозначим эти ребра как e1, e2 и e3 в порядке неубывания веса.

Рассмотрим удаление e4 из T. Поскольку T — дерево, удаление e4 разъединяет T на два поддерева, обозначаемых как T1 и T2, где e4 изначально соединяло вершины в T1 и T2.

Поскольку T является MST, оно должно иметь минимальный общий вес среди всех остовных деревьев G. Таким образом, удаление e4 и замена его ребрами e1, e2 и e3 (которые легче, чем e4) должно привести к созданию остовного дерева с общий вес меньше, чем у Т.

Пусть T' — остовное дерево, полученное заменой e4 в T ребрами e1, e2 и e3.

Однако T' образует цикл длины 4 с e1, e2, e3 и существующим ребром в T. Это противоречит заданному условию, что в G нет циклов длины 6 или меньше.

Следовательно, наше предположение о существовании MST группы G, не содержащего e4, неверно.

Следовательно, для каждого MST группы G MST содержит ребро e4.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
86
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Во-первых, критика вашей попытки (ваша работа выделена курсивом; мои комментарии выделены жирным шрифтом):

Предположим, от противного, что существует MST группы G, не содержащий ребра e4. Пусть T — MST группы G, не содержащий e4. Учитывая, что существует ровно 3 ребра с весом меньше веса e4, обозначим эти ребра как e1, e2 и e3 в порядке неубывания веса. Рассмотрим удаление e4 из T. Поскольку T — дерево, удаление e4 разъединяет T на два поддерева, обозначаемых как T1 и T2, где e4 изначально соединяло вершины в T1 и T2. Поскольку T является MST, оно должно иметь минимальный общий вес среди всех остовных деревьев G.

Вы не можете удалить e4 из T, поскольку вы уже предположили, что T не содержит e4.

Таким образом, удаление e4 и замена его ребрами e1, e2 и e3 (которые легче, чем e4) должно привести к получению остовного дерева с общим весом меньшим, чем у T.

Это не верно. Каждое остовное дерево с n вершинами имеет n-1 ребер. Если вы замените одно ребро тремя, связующего дерева больше не будет.

Теперь я перестану рассматривать ваш подход и покажу способ доказать это.

  • Пусть G имеет определение выше, и пусть T — MST группы G.
  • Пусть e1, e2, e3, e4, ... — ребра в порядке возрастания веса.
  • Пусть (a, b) — концы e4.
  • Предположим, e4 не принадлежит T.
  • Рассмотрим T U {e4}, граф (не дерево), образованный включением e4 в ребра T. Поскольку T является MST, T содержит путь между каждой парой вершин, в частности, он должен иметь путь между a и б. Этот путь вместе с e4 образует цикл в T U {e4}. Поскольку все ребра находятся в E, этот цикл также должен существовать в G и, следовательно, иметь длину >= 6.
  • Это означает, что в этом цикле есть как минимум 5 других ребер. Поскольку в E только три ребра меньше e4, то хотя бы два из них должны быть больше.
  • Сформируйте T' из T U {e4}, удалив из цикла одно из более тяжелых ребер.
  • Тогда T' — остовное дерево с меньшим общим весом, что является противоречием.

Но в моем вопросе мы говорим о цикле 6 или меньше, все еще сохраняется?

ATB 04.05.2024 18:08

@atb Поскольку не существует цикла длиной 6 или меньше, E4 не может вызвать цикл под Крускалом.

Dave 04.05.2024 19:38

Вы потеряли меня в разделе «Рассмотрим возможность удаления e4 из T», потому что вы уже сказали: «Пусть T будет MST G, который не содержит e4», поэтому вы не можете удалить e4 из T.

Доказательство в этом направлении будет выглядеть следующим образом:

Предположим, что существует MST T группы G, не содержащий e4.

Если бы мы добавили к этому дереву e4, это обязательно создало бы цикл.

Этот цикл не должен содержать ребер с весом > e4, потому что если бы это было так, мы могли бы удалить одно из этих ребер, чтобы создать дерево с меньшим весом, и T не было бы MST.

Значит, цикл должен содержать только ребра веса < e4, но таких ребер всего 3, а известно, что в G нет циклов длины < 6, поэтому и этот цикл не может существовать.

Следовательно, MST, не содержащий e4, подразумевает противоречие и не может существовать. Каждый MST содержит e4.

Другие вопросы по теме

Похожие вопросы

Разделите 144 матча 36 команд на 8 раундов. Каждая команда должна соревноваться один раз за раунд
Сортировка двумерного массива матчей так, чтобы у каждой команды было одинаковое количество домашних и выездных матчей
Сортировка списка точек в порядке сканирования основных змей
Недостаточно памяти для списка строк
Попытка создать уникальную пару матчей для каждой команды, аналогичную формату швейцарской системы Лиги чемпионов УЕФА 2024/25
Как правильно отсортировать массив строк разной длины
Сколько целых чисел в диапазоне [0-n] содержат хотя бы одну девятку в десятичном представлении?
Сортировка массива с небольшими числами, имея вторичный массив с начальными индексами
Перебирать точки в декартовом произведении массивов, упорядоченных по расстоянию такси от точки
Максимальное количество элементов в списке, сумма значений которых не превышает K за O (log n)