Курсы по программированию

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

Коллекция графа

Мы рассмотрим основные коллекции в языке C#.
Поэкспериментируем с ними, сравним их быстродействие.
Далее, познакомимся с теорией графов. Создадим класс
для представления графа в памяти компьютера.
Сделаем визуальное отображения графа и
составим алгоритмы поиска вширь и глубь,
с использованием коллекций Стек и Очередь.




2,000 руб.


Для подписки на пакет необходимо авторизоваться.

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

# Название видеоурока Решило Рейтинг Доступ
1 ArrayList 00:12:16 29 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 12 мин. [Показать отчёт]
Научился: работать с коллекцией типа ArrayList 
Сложности: ничего 
Комментарии: Насколько я понял, пустая коллекция не содержит элементов. Поигрался с функцией sort, которая (кто бы мог подумать) сортирует элементы =)  
2 List 00:12:57 29 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 15 мин. [Показать отчёт]
Научился: узнал новый тип List<> 
Сложности: ничего 
Комментарии: Очень много интересных методов. Мин, макс работают хорошо. Попытался разобраться с Take<>, что то не получилось =( 
3 Array vs List 00:11:04 28 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 15 мин. [Показать отчёт]
Научился: Узнал, что типизированный лист работает быстрее нетипизированного, а массив работает еще быстрее =) 
Сложности: ничего 
Комментарии: Все отлично. 
4 ListDictionary 00:15:19 28 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 15 мин. [Показать отчёт]
Научился: работе со списочным словарем 
Сложности: ничего 
Комментарии: Знакомая конструкция. В 1С тоже есть такие структуры =) 
5 Hashtable 00:11:56 27 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 15 мин. [Показать отчёт]
Научился: хеш-таблицам и гибридным словарям 
Сложности: ничего 
Комментарии: Почему то гибридные словари работали дольше всего на 10+ элементах. 
6 BitArray 00:14:00 27 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 15 мин. [Показать отчёт]
Научился: Научился экономить память при работе с логическими типами 
Сложности: ничего 
Комментарии: Очень удобная функция setall() 
7 Граф 00:13:48 27 чел. ★ 4.9 Done
  Отчёт отправил: 1947. Denis Решено за 15 мин. [Показать отчёт]
Научился: вспомнил что такое граф 
Сложности: ничего 
Комментарии: думаю, что лучше использовать словарь с типом  
8 Вершины 00:14:15 27 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 15 мин. [Показать отчёт]
Научился: Узнал что можно писать имена переменных на русском 
Сложности: ничего 
Комментарии: пока не совсем знаком с типом IEnumerable, и не знакомо слово yield. Но надеюсь в дальнейшем разберусьв 
9 Рёбра 00:12:47 26 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 20 мин. [Показать отчёт]
Научился: описывать и создавать граф 
Сложности: ничего 
Комментарии: отличная практика. Давно хотел упорядочить свои знания по графам. 
10 Инициация 00:11:15 26 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 20 мин. [Показать отчёт]
Научился: динамически выводить label на экран 
Сложности: придумать координаты для вершин 
Комментарии: пока вершины ребрами не соединил, но отобразил на экране. 
11 Отображение 00:16:18 26 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 15 мин. [Показать отчёт]
Научился: рисовать графы на форме 
Сложности: ничего 
Комментарии: отличный урок. Наглядное представление графа.  
12 Шахматная доска 00:19:58 26 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 20 мин. [Показать отчёт]
Научился: рисовать динамический граф 
Сложности: ничего 
Комментарии: отличный урок. Продолжаем изучение графа 
13 Широкий поиск 00:14:59 26 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 15 мин. [Показать отчёт]
Научился: придумывать граф 
Сложности: придумать граф 
Комментарии: все отлично. Переходим к алгоритму поиска! 
14 Широкий алгоритм 00:14:12 25 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 30 мин. [Показать отчёт]
Научился: поиску в ширину 
Сложности: Ошибку не нашел. С енумераторами не работал, поэтому даже не знаю, в чем может быть ошибка 
Комментарии: Отличный урок. 
15 Широкий пошаговый ход 00:11:46 25 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 15 мин. [Показать отчёт]
Научился: работать с графом 
Сложности: ничего 
Комментарии: Работаем дальше 
16 Визуализация процесса 00:14:07 22 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 20 мин. [Показать отчёт]
Научился: визуализации прохода по графу 
Сложности: ничего 
Комментарии: Воспользовался советом Максима и вместо перерисовки линий и рефреша панели вызывал Application.DoEvents() Линии не моргали, работало все гораздо плавнее. Надо будет посмотреть, может это можно использовать в сокобане!? 
17 Глубокий поиск 00:09:58 22 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 30 мин. [Показать отчёт]
Научился: алгоритму поиска вглубь 
Сложности: Не запутаться в очередности прохождения стека 
Комментарии: Каждое состояние стека рисовать не стал, но алгоритм я усвоил. До этого разбирался уже с этими алгоритмами, но в большей степени просто копировал код, и использовал его. А теперь я увидел как действительно он работает.  
18 Глубокий алгоритм 00:15:07 22 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 40 мин. [Показать отчёт]
Научился: алгоритму поиска в глубину 
Сложности: соотнести координаты для своего графа 
Комментарии: Отличный урок. Нарисовал свой граф, чтобы было интереснее. Осталось прикрутить поиск кратчайшего пути. Ну или еще вес ребер =) Очень интересный курс. 
19 ФИНАЛЬНЫЙ УРОК 22 чел. ★ 5 Done
  Отчёт отправил: 1947. Denis Решено за 2 час. 00 мин. [Показать отчёт]
Научился: Разобрали алгоритмы поиска в глубь и в ширь 
Сложности: ничего 
Комментарии: Я считаю, что курс просто отличный. Мало того, что мы узнаем как работает стек и очередь, еще мы разберем 2 алгоритма прохода по графу, а также увидим воочию как работают эти алгоритмы. Если немного доработать самостоятельно, можно прикрутить поиск кратчайшего пути. А понимание такого механизма очень поможет в спортивном программировании! Единственный (как мне кажется) недочет, так это то, что в курсе используются IEnumerable. Мне, как не проходившему по данному типу видеокурс, было немного тяжело, хоть и интуитивно понятно, как это работает. В общем и целом, я рекомендую этот курс всем, кто хочет еще глубже погрузиться в атмосферу программирования, а также всем, кто захочет когда нибудь участвовать в олимпиадах и различных конкурсах по программированию. Между прочим, алгоритм поиска кратчайшего пути является основным алгоритмом на ежегодном конкурсе Russian AI Cup (соревнование по программированию ИИ)  
  Итого:   19 видеоуроков общей продолжительностью 4 час. 06 мин. 22 чел. ★ 5  
  Финалисты:   Максим,   Alcatraz,   Дмитрий,   Tekashnik,   Denis,   Иван,   Дмитрий 199,   Николай,   Михаил,   Дмитрий,   Ender,   Платон,   Владимир,   Андрей Н.,   Владимир Борисенко,   Максим Лапшинов,   Permitin Alexey,   Новопашин Владимир,   Максим Саратов,   Алексей В.,   Denchik,   Елена .

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Оставлять отзыв.
Трудности: Ничего!!!
Все отлично, прекрасный курс, только мало времени на него выделено. Всего неделя на 19 уроков. Информации новой очень много, а времени, чтобы улеглось в голове очень мало. Хотя бы дней 14 - 20, чтобы можно было без спешки углубиться в мир графов. А в остальном, все очень хорошо, материал подается понятным языком. Лектор очень грамотно объясняет, чувствуется глубокое знание и профессионализм. Следующий курс - бурные потоки или шифрование.
Научился: Разобрали алгоритмы поиска в глубь и в ширь
Трудности: ничего
Я считаю, что курс просто отличный. Мало того, что мы узнаем как работает стек и очередь, еще мы разберем 2 алгоритма прохода по графу, а также увидим воочию как работают эти алгоритмы. Если немного доработать самостоятельно, можно прикрутить поиск кратчайшего пути. А понимание такого механизма очень поможет в спортивном программировании! Единственный (как мне кажется) недочет, так это то, что в курсе используются IEnumerable. Мне, как не проходившему по данному типу видеокурс, было немного тяжело, хоть и интуитивно понятно, как это работает. В общем и целом, я рекомендую этот курс всем, кто хочет еще глубже погрузиться в атмосферу программирования, а также всем, кто захочет когда нибудь участвовать в олимпиадах и различных конкурсах по программированию. Между прочим, алгоритм поиска кратчайшего пути является основным алгоритмом на ежегодном конкурсе Russian AI Cup (соревнование по программированию ИИ)