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

Формула программиста
основатель — Волосатов Евгений Витольдович
Вебинар «Что тебе мешает стать крутым программистом?» начнётся через 2 дня 29 мин.

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

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




3,000 руб.


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

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

# Название видеоурока Решило Рейтинг Доступ
1 ArrayList 00:12:16 32 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 20 мин. [Показать отчёт]
Научился: Узнал о коллекции ArrayList  
Сложности: Вроде ничего 
Комментарии: Узнал впервые о методе вставки insert, до этого только удалял элементы:) 
2 List 00:12:57 32 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 20 мин. [Показать отчёт]
Научился: Вспомнил списки и работу с ними.  
Сложности: Сумма...  
Комментарии: Нашёл метод RemoveAt - удаление по индексу. Не могу понять, почему Sum в List не работает??  
3 Array vs List 00:11:04 31 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 20 мин. [Показать отчёт]
Научился: Научился сравнивать коллекции.  
Сложности: Ничего :)  
Комментарии: Заодно и горячие клавиши повторил :)  
4 ListDictionary 00:15:19 31 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 20 мин. [Показать отчёт]
Научился: Узнал о коллекция типа ListDictionary и посмотрел некоторые свойства.  
Сложности: Вроде всё было понятно.  
Комментарии: Чем-то похоже на ключи в SQL, если мне не изменяет память, constraint... А для эксперимента любуюсь Remove :)  
5 Hashtable 00:11:56 30 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 2 час. 00 мин. [Показать отчёт]
Научился: Научился самостоятельно экспериментировать и сравнивать коллекции на практике.  
Сложности: Ждать.  
Комментарии: Скажу честно: мне лень было напрягать мозги и думать над этим, однако желание не стать посредственным программистом победило. Вот что накалякал: Я никак не мог понять, как создать много коллекций. Только потом вспомнил, что массив всегда придёт в помощь. Ну да ладно, с этим справился. Потом всё пошло отлично, но вот на скрине получилось так, что 100000 коллекций LD создаётся 200мс, а одна из 100000 элемнтов - минуту. МИНУТУ, КАРЛ! То ли я ошибся в исходнике (прикрепляю его), то ли коллекция LD быстрая только при малом кол-ве элементов? Ну а так, проэкспериментировав, можно сделать вывод, что с малым кол-вом элементов лучше LD не найти, в то же время HD-коллекции удобны при бОльшем кол-ве элементов. И ещё: я не понял третий этап, который Вы говорили на видео. Что от меня нужно? А так эксперимент понравился, спасибо за урок!  
6 BitArray 00:14:00 30 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 20 мин. [Показать отчёт]
Научился: Познакомился с коллекцией bitArray и закрепил знания по логическим операциям.  
Сложности: Вспомнить операции 
Комментарии: Ну наконец-то я понял Xor, а то с института не знал её. Да и логические действия забывать нельзя. Ах да, после этого урока охота пользоваться массивами пропадает:) А для эксперимента я просто вспомнил and и or :) 
7 Граф 00:13:48 30 чел. ★ 4.9 Done
  Отчёт отправил: 6925. Артём Решено за 20 мин. [Показать отчёт]
Научился: Вспомнил графы.  
Сложности: Думать над хранением их 
Комментарии: На курсе Комбинаторика была задача о выходе из лабиринта, где использовались очереди. Правда, тогда я о них не знал, но попробую с их помощью. А за идею графа спасибо сестре,которая попросила объяснить задачу рл геометрии :) 
8 Вершины 00:14:15 30 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 15 мин. [Показать отчёт]
Научился: Повторил итераторы и волшебное слово yield  
Сложности: yield... 
Комментарии: Dictionary подошёл бы и хранить там две вершины через массив (вершина 1, вершина2), соединяющие ребро, и длину его.  
9 Рёбра 00:12:47 29 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 15 мин. [Показать отчёт]
Научился: Научился описывать коллекцию рёбер и понял, почему надо Dictionary 
Сложности: вроде ничего  
Комментарии: простое неправильное решение :)  
10 Инициация 00:11:15 29 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 15 мин. [Показать отчёт]
Научился: Повторил динамическое создание элементов. 
Сложности: Додуматься до вывода 
Комментарии: Самое простое и неправильное решение - цикл. Вот не хочется писать 6 раз AddLabel и вычислять координаты, но похоже, придётся... P.S. возникла идея матрицы смежности составить :) Жаль, что на уровне идеи это и осталось :(  
11 Отображение 00:16:18 29 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 20 мин. [Показать отчёт]
Научился: Повторил работу с графикой.  
Сложности: не сразу вспомнил, что координата метки - верхний левый угол 
Комментарии: А можно ли метки в виде круга создать? Кстати, по поводу линий: уж очень попахивает Bitmap, pictureBox. Можно ли так использовать?  
12 Шахматная доска 00:19:58 29 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 30 мин. [Показать отчёт]
Научился: Научился создавать шахматный граф.  
Сложности: Не запутаться в циклах.  
Комментарии: Не получается скрин сделать: как только нажимаю альт, сразу стираются линии :(  
13 Широкий поиск 00:14:59 29 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 20 мин. [Показать отчёт]
Научился: Повторил алгоритм поиска вширь. 
Сложности: Вспомнить очередь. 
Комментарии: Идём дальше :)  
14 Широкий алгоритм 00:14:12 28 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 1 час. 00 мин. [Показать отчёт]
Научился: Вспомнил алгоритм поиска вширь через очередь.  
Сложности: Найти ошибку.  
Комментарии: Ну раз мы изменяли коллекцию, то почему бы там, где итератор, не сделать пребор, как в массиве - по индексу?  
15 Широкий пошаговый ход 00:11:46 28 чел. ★ 5 Done
  Отчёт отправил: 6925. Артём Решено за 15 мин. [Показать отчёт]
Научился: Повторил пошаговое исследование программы.  
Сложности: Ничего.  
Комментарии: Теперь пора визуализацию делать :)  
16 Визуализация процесса 00:14:07 24 чел. ★ 5 Open
17 Глубокий поиск 00:09:58 24 чел. ★ 5 Open
18 Глубокий алгоритм 00:15:07 24 чел. ★ 5 $
19 ФИНАЛЬНЫЙ УРОК 24 чел. ★ 5 $
  Итого:   19 видеоуроков общей продолжительностью 4 час. 06 мин. 24 чел. ★ 5  
  Финалисты:   Максим,   Alcatraz,   Дмитрий,   Tekashnik,   Denis,   Иван,   Дмитрий 199,   Николай,   Михаил,   Дмитрий,   Ender,   Платон,   Владимир,   Андрей Н.,   Владимир Борисенко,   Максим Лапшинов,   Permitin Alexey,   Новопашин Владимир,   Максим Саратов,   Алексей В.,   Den Andreevich,   Елена,   Станислав,   Сергей Соколов .

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Узнал, что есть еще коллекции, кроме листа. Научился писать алгоритмы поиска по графу вширь и вглубь
Трудности: Ничего сложного, всё просто и понятно
Очень понравился курс, всё доходчиво и интересно
Научился: Курс в целом очень полезный. В первую очередь из-за знакомства со списками/коллекциями, на самом деле это такая нужная "обыденная" вещь, без которой ни один более-менее средний (про большие уж не говорю) не обходится, поэтому знать и уметь пользоваться нужно обязательно. Ну и как бонус курса - знакомство с графами и алгоритмами их обхода вширь и вглубь.
Курс очень понравился, здесь не было чего-то особо запутанного и сложного для понимания. Единственное замечание - это автор немного "перемудрил" с алгоритмом добавления ребер на графе шахматной доски, но я реализовал свой алгоритм, поэтому для меня это не минус.