Обучение c# видеоуроки

Формула программиста
основатель — Волосатов Евгений Витольдович
Вступай в Телеграм чат проекта

Отзывы о вебинарах комбинаторики




Комбинаторика

Практическое знакомство с фундаментальными аспектами теории алгоритмов: рекурсия, комбинаторика, динамическое программирование, работа с графами; разбор нескольких задач по каждой теме. Рисование фракталов.

Объём: 22 видеоурока
Темы: Рекурсия, комбинаторика,
динамическое программирование, фракталы.
Срок: 30 дней.


Хочу купить!

Купить в рассрочку за мегахеши

Цена: 2000 p.


Список уроков | фото | видео

# Название видеоурока Решило Рейтинг Доступ
1 Рекурсия. Вступление 167 чел. ★ 4.7 Done
 

«Человеку свойственна итерация,
рекурсия - божественна».


Мы начнём наш курс с такой интересной и трепетной темы, как РЕКУРСИЯ.
Вокруг рекурсии ходит множество толков, загадок, непоняток и заблуждений.
Сегодня мы один раз и навсегда, просто и понятно выясним, что такое рекурсия и как её понять.

Задание:
Дать определение рекурсии своими словами.
Найти красивую и достойную картинку на тему рекурсии.

Видео на этом уроке нет.
Отчёт отправил: 9044. y0lych Выполнено за 5 мин. [Показать отчёт]
Научился: Давать определение рекурсии. 
Сложности: Сложностей не возникло. 
Комментарии: Рекурсия - способ общего определения объекта внутри самого объекта, используя ранее заданные частные определения самого объекта. 
2 Рекурсия. Главный секрет 00:31:52 98 чел. ★ 4.9 Done
  На вебинаре рассмотрели несколько примеров по созданию рекурсивных алгоритмов.
Рассказал основной секрет, как понимать рекурсию.

Задание:
Нарисовать кривую Гильберта на листе бумаги.
Отчёт отправил: 9044. y0lych Выполнено за 20 мин. [Показать отчёт]
Научился: Научился рисовать кривую Гильберта, рекурсивно выводить слова в обратном порядке следования и рекурсивно вычислять факториал числа 
Сложности: Рисовать. 
Комментарии: Пока нет вопросов. 
3 Рекурсия. Заливка области 00:47:23 91 чел. ★ 5 Done
  Пишем алгоритм заливки, как в программе Паинт.
Отчёт отправил: 9044. y0lych Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Демонстрировать работу рекурсии на примере созданного алгоритма заливки области. Работать с консолью: настраивать цвета символов. 
Сложности: Написание функции инициализации формы.  
Комментарии: Очень впечатляюще получилось, в программе можно проследить порядок вызова рекурсивных функций и выхода из них. 
4 Рекурсия. Факториал 00:04:35 58 чел. ★ 4.9 Done
  На этом уроке мы пойдём в гости к роботу Шарпу.

Задание:
Решить задачу «Факториал».
Отчёт отправил: 9044. y0lych Выполнено за 2 мин. [Показать отчёт]
Научился: Писать вычисление факториала числа еще раз. 
Сложности: Сложностей не возникло 
Комментарии: Иду дальше. 
5 Рекурсия. Числа Фибоначчи 00:03:46 54 чел. ★ 5 Done
  На этом уроке мы пойдём в гости к роботу Шарпу.

Задание:
Решить задачу «Числа Фибоначчи».
Отчёт отправил: 9044. y0lych Выполнено за 5 мин. [Показать отчёт]
Научился: Находить числа Фибоначчи, используя рекурсию. 
Сложности: Сложностей не возникло. 
Комментарии: Иду дальше. 
6 Рекурсия. Общий делитель 00:04:08 54 чел. ★ 4.9 Done
  На этом уроке мы пойдём в гости к роботу Шарпу.

Задание:
Решить задачу «Общий делитель».
Отчёт отправил: 9044. y0lych Выполнено за 5 мин. [Показать отчёт]
Научился: Находить НОД двух чисел через рекурсию, используя вычитание. 
Сложности: Сложностей не возникло 
Комментарии: Иду дальше. 
7 Рекурсия. Обратный отсчёт 00:05:52 53 чел. ★ 4.9 Done
  На этом уроке мы пойдём в гости к роботу Шарпу.

Задание:
Решить задачу «Обратный отсчёт».
Отчёт отправил: 9044. y0lych Выполнено за 5 мин. [Показать отчёт]
Научился: Выводить ряд входящих чисел в обратом порядке, используя рекурсию. 
Сложности: Сложностей не возникло. 
Комментарии: Иду дальше. 
8 Рекурсия. Фракталы. Спираль 00:25:42 67 чел. ★ 5 $
  На этом уроке мы сначала сделаем заготовку
для рисования линий на форме, а потом
нарисуем спираль используя рекурсию.
Потом мы её немного изменим,
чтобы наша спираль стала
настоящим фракталом.
9 Рекурсия. Фракталы. Треугольник Серпинского 00:23:41 52 чел. ★ 5 $
  На этом уроке мы будем рисовать треугольник Серпинского.
Нам опять поможет рекурсия, которая будет "тройной",
потому что на каждом следующем шаге мы
будем рисовать три новых треугольника.
10 Рекурсия. Фракталы. Кривая Гильберта 00:35:18 40 чел. ★ 5 $
  На этом уроке мы нарисуем кривую Гильберта.
Да-да, ту самую, которую ты рисовал
на листике в начале курса Комбинаторика.
Мы здесь познакомимся с косвенной рекурсией,
это когда несколько функций вызывают друг друга.
11 Комбинаторика. Счастливые билеты 6 00:02:33 49 чел. ★ 4.9 Done
  На этом уроке мы рассмотрим самый простой
способ решения комбинаторных задач,
с использованием вложенных циклов.

Задание
Решить задачу «Счастливые билеты»
Отчёт отправил: 9044. y0lych Выполнено за 5 мин. [Показать отчёт]
Научился: Подсчитывать количество возможных шестизначных счастливых чисел. 
Сложности: Искать опечатку у себя в решении. 
Комментарии: Двигаюсь дальше. 
12 Комбинаторика. Счастливые билеты N 00:40:51 64 чел. ★ 5 Done
  На этом уроке мы рассмотрим
два основных способа решения комбинаторных задач:
Первый способ - когда известно количество объектов - вложенные циклы.
Второй способ - любое количество объектов - использование рекурсии.

Задание:
Решить задачу «Счастливые билеты N».
Скачать книжку для чтения по комбинаторике:
Как решать комбинаторные задачи.
Отчёт отправил: 9044. y0lych Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Находить все 2N счастливые числа. Оптимизировать рекурсию для решения комбинаторной задачи их нахождения. 
Сложности: Разобраться с оптимизацией в функции next() 
Комментарии: Двигаюсь дальше. 
13 Комбинаторика. 4 x 4. Ладья x Ферзь 00:26:01 58 чел. ★ 5 Done
  На этом уроке мы рассмотрим две шахматные задачи,
про расстановку ладьей и ферзей на доске, чтобы они не рубили друг друга.
Задачи решаются первым способом - перебор вариантов без использования рекурсии.

Задание:
Решить задачу «Четыре Ладьи».
Решить задачу «Четыре Ферзя».

Отчёт отправил: 9044. y0lych Выполнено за 30 мин. [Показать отчёт]
Научился: Решать задачу размещения ладей и ферзей на доске 4х4 с помощью циклов. Решать задачу размещения ферзей на доске NxN, используя рекурсию с отсечением. 
Сложности: Задачка с ферзями для N, условие для диагоналей. 
Комментарии: Двигаюсь дальше. 
14 Комбинаторика. Много ферзей. Демонстрация 00:47:45 52 чел. ★ 5 Done
  Теперь составим программу для расстановки N ферзей на шахматной доске N x N.
Для решения этой задачи нам потребуется рекурсия.
А чтобы понять, как она работает -
сделаем визуальную демонстрацию процесса работы алгоритма.


Отчёт отправил: 9044. y0lych Выполнено за 1 час. 40 мин. [Показать отчёт]
Научился: Решать задачу расстановки N ферзей на доске NxN, используя рекурсию. Писать ее консольную визуализацию.  
Сложности: Понять координатную систему. 
Комментарии: Двигаюсь дальше. 
15 Комбинаторика. Сложение букв 00:36:25 54 чел. ★ 5 Done
  Существует серия головоломок на математическое выражение из букв, например:
ШРАМ * Ы = ШРАМЫ
БУЛОК + БЫЛО = МНОГО
Как правило в этих примерах каждой букве соответствует одна цифра.
Одинаковым буквам одинаковые цифры, разным буквам - разные цифры.
Необходимо решить эту головоломку, то есть разгадать, какой был пример.

Для решения этих задач комбинаторика так и напрашивается.
Первую задачу мы решим первым способом, через вложенные циклы.
Вторую задачу вторым способом, через рекурсию.


Отчёт отправил: 9044. y0lych Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Решать головоломки с подбором значений, используя рекурсию. 
Сложности: Рекурсивная функция во второй задаче. 
Комментарии: Двигаюсь дальше. 
16 Комбинаторика. Математические операции 00:22:34 50 чел. ★ 5 Done
  Продолжаем комбинаторную практику.
Дан ряд цифр и одно число, например:
1 2 3 4 5 6 7 8 и 100.
Расставить между цифрами знаки
"пробел", "умножить", "плюс" и "минус"
таким образом, чтобы получилось заданное число.

Отчёт отправил: 9044. y0lych Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: Находить и вычислять возможные варианты комбинаций арифметических операций и цифр, образующих выражения. 
Сложности: Написание рекурсивной функции find и класса Calc. 
Комментарии: Двигаюсь дальше 
17 Полуфинальный урок. Ответы на вопросы 46 чел. ★ 4.9 Done
  Ты уже практически закончил курс «Комбинаторика».
Пожалуйста, ответь на несколько вопросов.
Эти ответы пригодятся тебе при записи видеоотзыва.
(видео в этом уроке нет)
Отчёт отправил: 9044. y0lych Выполнено за 10 мин. [Показать отчёт]
Научился: 1. Первое впечатление от алгоритма заливки области осталось самым ярким. 2. Да, я стал лучше разбираться в изучаемых темах. 3. Еще больше наглядной рекурсии, короткие уроки с консольными задачами объединить в один. 4. Практика применения рекурсии, написание калькулятора и расстановка ферзей на доске. 5. Женя. 
Сложности:  
Комментарии: Двигаюсь дальше. 
18 Динамика. Поле дураков 00:18:40 52 чел. ★ 5 Done
  Вступление в тему "Динамическое программирование".
Решение олимпиадной задачи "Поле дураков".
Отчёт отправил: 9044. y0lych Выполнено за 30 мин. [Показать отчёт]
Научился: Использовать динамическое программирование для решения задачи. Научился составлять алгоритм нахождения максимальной суммы на "поле". 
Сложности: Сложностей не возникло. 
Комментарии: Двигаюсь дальше. 
19 Динамика. Счастливые билеты 20 00:58:04 46 чел. ★ 5 Done
  Решаем уже знакомую задачу новым способом.
Начальные данные: число N от 1 до 10.
Вывод результата: количество 2N-значных счастливых билетов.
Работает - моментально!

Рекомендую ознакомиться с публикациями на эту же тему:
http://www.sql.ru/forum/932580/posobie-dlya-studentov-i-shkolnikov?mid=15179128#15179128
https://goo.gl/RyNCXH


Отчёт отправил: 9044. y0lych Выполнено за 1 час. 20 мин. [Показать отчёт]
Научился: Решать задачу поиска счастливых билетов, используя динамическое программирование. 
Сложности: Всё. 
Комментарии: Двигаюсь дальше. 
20 Динамика. Выход из Лабиринта 00:59:02 44 чел. ★ 5 Done
  Мы рассмотрим наиболее популярный, интересный и полезный алгоритм теории графов:
Поиск кратчайшего пути в графе. В основе идеи лежит принцип динамического программирования.

В качестве графа у нас будет Лабиринт, мы будем в нём искать кратчайший путь из одной клетки в другую.

Прошу перед уроком ознакомиться со следующими материалами:
1. Очередь в C#.
2. Поиск в ширину в графе.
Отчёт отправил: 9044. y0lych Выполнено за 1 час. 20 мин. [Показать отчёт]
Научился: Научился применять очереди C#, написал нахождение длины пути в лабиринте и его демонстрацию от старта к финишу, используя динамический алгоритм поиска в ширину. 
Сложности: Сложностей не возникло. 
Комментарии: Результатами доволен =_) 
21 ФИНАЛЬНЫЙ УРОК 00:23:23 31 чел. ★ 4.9 $
  Задание
Записать видео обзор твоих лучших программ этого курса.
22 VIP. Простые числа. Оптимизация алгоритма 01:19:28 37 чел. ★ 5 $
  Пишем функцию для поиска простых чисел и
поэтапно оптимизируем её в двух направлениях.
  Итого:   22 видеоурока общей продолжительностью 9 час. 57 мин. 23 чел. ★ 4.96  
  Финалисты:   Елена,   alexmail19Q,   Максим Лапшинов,   Андрей Поляков,   Vera,   Иван,   Артём,   Tekashnik,   Михаил Ермишин,   Николай,   Alcatraz,   Den Andreevich,   Дмитрий,   Иван Воронин,   Алексей В.,   Новопашин Владимир,   Сергей Зулкарнаев,   Алексей Малышев,   Александр,   Sergio,   Сергей Стефаненко,   Денис,   chokayes .

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Повторил создание видео обзоров.
Трудности: Кратко рассказать про программу заливки области.
Курс очень понравился, спасибо, Евгений Витольдович :)


Научился: Наконец-то добавил звуковую дорожку к обзору. )
Трудности: Хотел по всем урокам пробежаться, но там видео получилось по длине нереальное. Пришлось повырезать. Про некоторые вещи забыл сказать. )