LINUX.ORG.RU
ФорумTalks

Algorithms, Part II

 , ,


4

2

Собственно сабж. Зарелизилась вторая часть Седжвиковского курса по алгоритмам и структурам данных. В этой части будем фапа^W учиться работать с графами.

https://www.coursera.org/learn/java-data-structures-algorithms-2

★★★★★

Надеюсь, там задачки будут не в виде эклипсовских проектов.

GblGbl ★★★★★
()
Ответ на: комментарий от Shadow

Я бы хотел, чтобы там не надо было прикручивать свой маленький кусочек к их большой обёртке, а можно было как на hackerrank-е, или разных олимпиадных сайтах засылать только один файл с твоим кодом.

GblGbl ★★★★★
()
Ответ на: комментарий от GblGbl

Ну в первой части так и было. zip архив с парой-тройкой исходников.

Stil ★★★★★
() автор топика
Ответ на: комментарий от Stil

Ага, именно. Не понииаю, зачем это городить - задать формат ввода, формат вывода и достаточно.

GblGbl ★★★★★
()
Ответ на: комментарий от upcFrost

давно ж была, нет? или типа только анонс был?

Ну я был давно зареган и постоянно видел надпись «Starting $MONTH», где MONTH – текущий месяц +1. А вот вчера пришло письмо, что, мол, понеслась.

Stil ★★★★★
() автор топика

Один из лучших курсов на курсере. Я его ниасилил.

anto215 ★★
()
Ответ на: комментарий от Stil

Если чисто посдавать алгоритмы, то на informatics.mccme.ru есть очень много задач, где нужно именно сдать алгоритм, и ничего более. Думаю и на codeforces.com тоже найдётся много такого.

zamazan4ik ★★
()
Ответ на: комментарий от Stil

Ну я был давно зареган и постоянно видел надпись «Starting $MONTH», где MONTH – текущий месяц +1. А вот вчера пришло письмо, что, мол, понеслась.

эээ... странно. мне казалось что они его реально каждый месяц давали. первая часть збс была, сдал на 100/100 правда иногда сидел до 4 часов и один раз слал код с планшетки из автобуса

upcFrost ★★★★★
()
Последнее исправление: upcFrost (всего исправлений: 1)

Спасибо.

Время-время-время где бы найти на это :(

EXL ★★★★★
()

Так и не смог заставить себя пройти первую часть до конца потому что сертификатов не дают. Лол.

utf8nowhere ★★★
()
Ответ на: комментарий от zamazan4ik

Посмотрел например это: http://informatics.mccme.ru/mod/statements/view.php?id=265

Так вот, это не то. В задачках с принстонского курса меньше синтетики. Т.е. там как было – на лекциях проходится какой-нибудь материал, например priority queue, и в практическом задании тебе дают задание на применение этого материала в условиях отдаленно напоминающих реальные. Например задание по PQ было реализовать вариацию А*. Ну и плюс эти доны говорят тебе где этот материал может понадобиться дальше.

А не просто дано 10000 интов :)

Stil ★★★★★
() автор топика
Ответ на: комментарий от utf8nowhere

Да, вот единственный курс за который я готов взять и заплатить, а сертификата нету :)

Stil ★★★★★
() автор топика
Ответ на: комментарий от Stil

Ну, приближенность к реальным задачам как по мне не помогает именно отрабатывать алгоритмы. И тут помогает именно формализация входных условий. Никто Вам не мешает реализовать ту же приоритетную очередь или A* на простой задаче - дано N городов и M двунаправленных дорог между ними. Найти кратчайший путь от S до T. Ограничения такие-то, дороги задаются так-то, города с такими-то номерами. Решением будет чистый алгоритм с минимумом всякой лишней мишуры.

Про будущее применение - если они говорят, где в РЕАЛЬНЫХ задачах оно применяется, то да, полезно знать. А если в УЧЕБНЫХ, то в реализации алгоритма всё равно будут указаны используемые структуры данных.

Если в этой задаче так всё формально и просто, то можете поискать вполне себе серьёзные задачи, где не написано просто почти прямым текстом «Напиши мне плиз Дейкстру на priority_queue», а задачи, где уже подумать надо. Но это не тот тип задач, которые годятся для отработки написания структур данных и алгоритмов.

Конкретно мой опыт и многих моих знакомых: если сами, то это http://e-maxx.ru/algo/ - для чтения алгоритмов + отработка на сначала простых задачах аля напишите просто алгоритм до задача, где уже нужно писать не просто этот алгоритм, а встраивать его куда-то, додуматься, что этот алгоритм сюда подходит и так далее. Плюс тематические контесты «Сегодня задачи на графы». Плюс обычные контесты, где не знаешь, что там будет.

Если сборы, то лекция 5 часов с теорией. Потом - контест.

Например, в ЛКШ именно такой подход, и он работает.

zamazan4ik ★★
()
Ответ на: комментарий от zamazan4ik

Ну, приближенность к реальным задачам как по мне не помогает именно отрабатывать алгоритмы. И тут помогает именно формализация входных условий. Никто Вам не мешает реализовать ту же приоритетную очередь или A* на простой задаче - дано N городов и M двунаправленных дорог между ними. Найти кратчайший путь от S до T. Ограничения такие-то, дороги задаются так-то, города с такими-то номерами. Решением будет чистый алгоритм с минимумом всякой лишней мишуры.

Ну разбор там на лекциях, на практике применение, а не переизобретение. Т.е. они учат не запиливать свою PQ на коленке за 20 минут, а применять её на практике. «Вот смотрите, физическая симуляция, N сталкивающихся шариков в коробке, удары абсолютно упругие. Наивная time-based симуляция работает за N² (нам нужно пройти по всей коллекции и проверить каждый мячик на коллизии), event-based симуляция, с другой стороны, дает около линейное время (расчет событий только в момент коллизии, худший случай N-1 событий для мячика).»

Ну и задача с A* мне запомнилась именно потому, что там не путь между городами искали. Там А* раскладывал пазл с перестановками :)

http://e-maxx.ru/algo/

Спасибо

Stil ★★★★★
() автор топика
17 марта 2017 г.

подскажите что нибудь подобное только на русском вообщем что почитать по теме

wackobird
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.