Алгоритм Уоршелла

Поделиться
HTML-код
  • Опубликовано: 7 июл 2013
  • Описан простой алгоритм транзитивного замыкания отношения на множестве {a,b,c,d}. Изображается соответствующий граф и дополнительные дуги, возникающие после замыкания графа на свойство транзитивности.

Комментарии • 38

  • @deadrunner983
    @deadrunner983 6 лет назад +31

    Спасибо огромное! Ваше объяснение очень доходчиво и сохранило мне много времени и нервов

  • @vasiapunkrok
    @vasiapunkrok 3 года назад +8

    Спасибо! Четко, ясно, понятно, быстро! Не то, что на лекциях: по полтора часа объясняют, но ничего не понятно

  • @YuliiaJV
    @YuliiaJV 3 года назад +6

    Спасибочки! Пишу расчетку по дискретке и страдаю, но ві мне облегчили страдания)

  • @1ROMARIO1985
    @1ROMARIO1985 11 лет назад +4

    Спасибо Вам огромное, за Ваш труд.

  • @ms.maria.golubeva
    @ms.maria.golubeva 5 лет назад +1

    Спасибо большое! Все очень понятно и доступно!❤️

  • @oksanakost3355
    @oksanakost3355 5 лет назад +1

    Спасибо большое! Все очень доступно и понятно!

  • @sirilliya
    @sirilliya 5 лет назад +1

    Большое спасибо! Все просто и понятно!

  • @bwnuts
    @bwnuts 6 лет назад +2

    Спасибо большое, хоть расчетку до полуночи закончу

  • @ayananygmetova5681
    @ayananygmetova5681 5 лет назад +1

    спасибо большое, очень понятно и доступно

  • @bobhutchinson3638
    @bobhutchinson3638 10 лет назад +1

    Все понятно! Спасибо!

  • @by_bbdm4881
    @by_bbdm4881 Год назад

    Преподаватель от Бога, спасибо!

  • @user-kg7pu3mr1l
    @user-kg7pu3mr1l 4 года назад +1

    Шикарно обьясняет

  • @user-gn7nd3md1b
    @user-gn7nd3md1b 4 года назад +2

    Спасибо!!

  • @user-nl9nh4yj9u
    @user-nl9nh4yj9u 3 года назад

    Спасибо!

  • @userasdf123
    @userasdf123 4 года назад +1

    Круто !

  • @jeremyclarkson3209
    @jeremyclarkson3209 9 лет назад

    Спасибо!!!

  • @andriyburtso7591
    @andriyburtso7591 6 лет назад

    Спс

  • @1CrazyTeamChannel
    @1CrazyTeamChannel 6 лет назад

    Четко, все понятно, like

  • @Vitgic
    @Vitgic 7 лет назад +1

    на 6.06 минуте подзамкнуло у меня

  • @user-lg7bh5dn1i
    @user-lg7bh5dn1i 6 лет назад +2

    а почему к 4 строке не добавили 1 в столбце b?

    • @Kirsanov2011
      @Kirsanov2011  6 лет назад

      Спасибо, Лена! Действительно, пропустил 1. Иначе путь d->a->b не сокращается до d->b

  • @sovaz1997
    @sovaz1997 8 лет назад +7

    Можно сделать проще:
    for(int k = 0; k < N; ++k) {
    for(int i = 0; i < N; ++i) {
    for(int j = 0; j < N; ++j) {
    graph[i][j] = min(graph[i][j], graph[i][k] + graph[k][j]);
    }
    }
    }

    • @Kirsanov2011
      @Kirsanov2011  8 лет назад +4

      +Олег Смирнов Спасибо!

  • @nuki7944
    @nuki7944 4 года назад

    музька в начале как в голливудском фильме

    • @Kirsanov2011
      @Kirsanov2011  4 года назад

      Это кусочек гимна МЭИ...

  • @dotdiese8380
    @dotdiese8380 7 лет назад +2

    Мне не понятно, зачем вы поменяли значение в (d,d), если он находится на диагонали??

    • @iMaxBlazer
      @iMaxBlazer 7 лет назад

      Потому что диагональ мы не трогали в исходной матрице. В заполнении результирующей таблицы нет никаких дополнительных правил.

    • @mesmeridze1
      @mesmeridze1 7 лет назад

      Если честно, понятней для меня не стало :) Шаг на d,d избыточен, он не добавляет транзитивности ни для одного элемента.

    • @iMaxBlazer
      @iMaxBlazer 7 лет назад

      d доступна сама для себя через а, поэтому добавляем петлю.Oleksandr Znachkov

    • @danya151mail
      @danya151mail 5 лет назад

      iMaxBlazer в транзитивности три Разных элемента присутствуют

  • @hytryi_huy
    @hytryi_huy 2 года назад

    У мене от взагалі метро нема, пересадку спробував у Києві і це геніально, сідаєш в метро і забуваєшся

    • @Kirsanov2011
      @Kirsanov2011  2 года назад

      Приїжджай в Москву. Тут цікаво. Нові станції майже кожен місяць з'являються. Спасибі Собяніну. І поїзда суперкомфортні.

    • @kovbaska_
      @kovbaska_ Год назад

      @@Kirsanov2011 згодом

    • @aelfwynnx
      @aelfwynnx Год назад

      @@Kirsanov2011 ахаххаха хороший жарт

  • @user-on4oi7cr6r
    @user-on4oi7cr6r 3 года назад

    Либо я делаю что-то не так, либо алгоритм не сходится на примере
    Входные данные:
    0 1 0 0
    0 0 0 1
    0 0 0 0
    1 0 1 0
    Выходные данные должны быть:
    1 1 1 1
    1 1 1 1
    0 0 0 0
    1 1 1 1
    А у меня когда я делал я складывал первую строчку со второй и у меня получилось [0 1 0 1] что уже не сходится

    • @Kirsanov2011
      @Kirsanov2011  2 года назад

      Это итеративный алгоритм. Повторите, но уже по измененной матрице. Все получится!

    • @user-on4oi7cr6r
      @user-on4oi7cr6r 2 года назад

      @@Kirsanov2011 Спасибо) Я кстати сдал предмет на 5 ещё где-то в июне))

    • @arthurrebar6693
      @arthurrebar6693 2 года назад

      @@Kirsanov2011 а как узнать итеративный ли алгоритм??