# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
|
|||
В этой серии уроков мы познакомимся с гениальным алгоритмом X Дональда Кнута - Dancing Links. Этот алгоритм можно применять для решения самых разных комбинаторных задач, например, разложение Пентамимо, решение Судоку, размещение ферзей и так далее. Статья Дональда Кнута: https://arxiv.org/pdf/cs/0011047v1.pdf Обзорная статья на Хабре: https://habrahabr.ru/post/194410/ Отчёт отправил: 8275. Tekashnik Выполнено за 33 мин. [Показать отчёт] Научился: Узнал о существовании Dancing Links Сложности: Понять, как с помощью Dancing Links решать комбинаторные задачи Комментарии: Пока понимание не пришло, всвязи с этим сложно описать хоть какую то игру используя Dancing \Links |
|||||
2 | Работа алгоритма |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы пошагово рассмотрим статью на Хабре. Отчёт отправил: 8275. Tekashnik Выполнено за 1 час. 02 мин. [Показать отчёт] Научился: Работать с развёрнутой матрицей Сложности: Разобраться как и что ) Комментарии: Будем смотреть дальше, как там всё с черырёхсвязным списком то работать)) |
|||||
3 | Двусвязный список с удалением |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы пошагово рассмотрим статью автора данного алгоритма и рассмотрим пошаговое удаление и возвращение элемента. Отчёт отправил: 8275. Tekashnik Выполнено за 38 мин. [Показать отчёт] Научился: Делать двусвязный список Сложности: Придумать, что было самым сложным Комментарии: Научился ещё удалять и восстанавливать элементы списка) |
|||||
4 | Расширение хоровода |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы наконец приступим к реализации двусвязного списка на языке C#. Отчёт отправил: 8275. Tekashnik Выполнено за 34 мин. [Показать отчёт] Научился: Программировать двухсвязный список Сложности: Придумать, что было самым сложным Комментарии: Мне почему то сдало более понятнее, когда мы стали кодить, а не рисовать. Видимо когда рисовали всё выло очен абстрактно, а теперь есть конкрет |
|||||
5 | Заголовки столбцов |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы реализуем перемещение вверх/вниз для реализации четырёх-связного списка, так же создадим класс Header(), чтобы знать в каком столбце мы находимся. Отчёт отправил: 8275. Tekashnik Выполнено за 42 мин. [Показать отчёт] Научился: создавать четырёх связный список Сложности: Придумать, что было самым сложным Комментарии: Всё интересней и интересней, уже хочется перейти к реализации алгоритмаХ |
|||||
6 | Единичная матрица |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке, используя созданный ранее четырёх-связный список, мы добавим необходимые нам элементы для дальнейшем работы с ними. Отчёт отправил: 8275. Tekashnik Выполнено за 38 мин. [Показать отчёт] Научился: Создавать класс аллгоритма Х Сложности: Разобраться как всё работает Комментарии: Элегантнинько получилось))) |
|||||
7 | Как ссылки пошли впляс |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы реализуем заготовку функции Dance() в классе Dance(). Отчёт отправил: 8275. Tekashnik Выполнено за 35 мин. [Показать отчёт] Научился: Реализовыать алгоритм Х Сложности: Понять как это работает Комментарии: Ждём с нетерпением, когда же будут результаты выведены на экран |
|||||
8 | Открытие/закрытие столбцов |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы доработает функции AddRow() и Dance() в классе Dance(). Так же реализуем функции Cover/Uncover(). Отчёт отправил: 8275. Tekashnik Выполнено за 1 час. 01 мин. [Показать отчёт] Научился: Следить за полётом мысли, великого комбинатора Сложности: Следить за полётом мысли, великого комбинатора Комментарии: Серьёзный алгоритм, думаю нужно будет не раз пересмотреть |
|||||
9 | Фигуры из пентамимо |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы приступаем к решению олимпиадной задачи: Пентамино, заполнив массив всеми вариантами расположения фигур. Отчёт отправил: 8275. Tekashnik Выполнено за 41 мин. [Показать отчёт] Научился: Получать подарки в виде сформированных программно фигур Сложности: Реализовать алгоритм самостоятельно Комментарии: Думаю для реализации у меня уйдёт много времени, а его к сожалению нет((( Так что будем смотреть как оно там на самом деле бывает |
|||||
10 | Фигуры в консоли |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы решили реализовать возможность отображения фигур в консоли, чтобы в дальнейшем видеть что происходит в процессе работы алгоритма. Отчёт отправил: 8275. Tekashnik Выполнено за 53 мин. [Показать отчёт] Научился: выводить фигуры в консоль из матрицы Сложности: Найти время Комментарии: Решил, что менять бакгаунд визуальнее более нагляднее, результаты на скриншоте) |
|||||
11 | Матрица Пентагона |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы завершим реализацию функции поиска решения Пентамино. Отчёт отправил: 8275. Tekashnik Выполнено за 31 мин. [Показать отчёт] Научился: Закрепил знания полученный на вебинаре. Сложности: найти время Комментарии: Отличный урок, интересная реализация алгоритма, осталось дождаться окончания его работы =) з.ы. Однозначно требуется оптимизация, чем и займёмся на след. уроке. з.з.ы. Ивану должно понравиться |
|||||
12 | Пентагон в деталях |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы воспользуемся функцией Show() в классе Figure() для визуализации генерации всех вариантов расположения фигур Пентамино. Отчёт отправил: 8275. Tekashnik Выполнено за 35 мин. [Показать отчёт] Научился: Выводить фигуру на её место , согласно матрице Сложности: Придумать, что было самым сложным Комментарии: Сыпер всё придумано)) Визуализация помогает лучше понять происходящее в алгоритме)) |
|||||
13 | Пентагон ищет решение |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы визуализируем поиск решения Пентамино с использованием yield. Отчёт отправил: 8275. Tekashnik Выполнено за 17 час. 21 мин. [Показать отчёт] Научился: Ждать когда пентагон найдёт решение Сложности: Ждать когда пентагон найдёт решение Комментарии: Так и не дождался когда пентагон найдёт решение. Вывел на экран установление 11 фигур |
|||||
14 | Десятикратная оптимизация |
|
|||
Мы продолжаем знакомство с гениальным алгоритмом X Дональда Кнута - Dancing Links. На этом уроке мы оптимизируем наш алгоритм поиска решения Пентамино. Отчёт отправил: 8275. Tekashnik Выполнено за 1 час. 34 мин. [Показать отчёт] Научился: Оптимизировать алгоритм Сложности: Поверить что такая оптимизация принесёт такие плоды Комментарии: Хочу попробовать судоку сделать на этом движке, времени пока не много. Зато обзор записал, которого не просили) И сделал визуализацию каждого ответа)) Курс крутой, но далеко не для всех, чтобы в нём разобраться хорошенечко, нужно много чего пройти (и огонь, и воду, .....) Видеообзор: TN-iEKGJUHo |
|||||
Итого: 14 видеоуроков |
4 час. 18 мин. |
17 чел. | |||
Финалисты: Иван Воронин, Андрей, AZANIR, Алексей Малышев, Сергей Соколов, Алексей В., Максим Лапшинов, Spellion, Tekashnik, Yefim, Новопашин Владимир, Bazel, Николай Денисов, Иван, Дмитрий, Max, MaxB . |