Зачем учить алгоритмы и структуры данных? / Основы программирования

  Рет қаралды 19,958

EngineerSpock - IT & программирование

EngineerSpock - IT & программирование

Күн бұрын

Подписка на Boosty: boosty.to/engineerspock
---------------------------------------------------------------------------------------- Донаты на развитие: pay.cloudtips.ru/p/1f080f72 Курсы от EngineerSpock: www.engineerspock.com/offer-y...
После того как человек задался вопросом "как стать программистом" и стал работать в эту сторону, рано или поздно возникнет вопрос а нужно ли учить алгоритмы и структуры данных?
Должен ли хороший программист разбираться в алгоритмах и структурах данных? И если да, то почему? Какую литературу почитать: Дональда Кнута "Искусство программирования", "Грокаем алгоритмы" или ещё что...
00:00 Вступление: нужно ли программисту учить алгоритмы
00:40 Программисты бывают разные
01:38 Нужно ли учить алгоритмы параллельно со своим первым ЯП
02:00 Нужно ли учить алгоритмы после освоения своего первого ЯП
03:05 Пример #1 когда нужны алгоритмы и структуры данных
05:05 Пример #2 когда нужны алгоритмы и структуры данных
06:08 Пример #3 когда нужны алгоритмы и структуры данных
06:54 Что надо знать об алгоритмах и структурах данных программисту
09:17 Что такое "разбираться" в алгоритмах?
09:48 Про собеседования и знание алгоритмов
12:46 Необходимо ли знать алгоритмы и структуры данных, чтобы устроиться на свою первую работу?
13:05 Литература для изучения алгоритмов и структур данных
13:44 Алгоритмы на Java - Роберт Седжвик
Курс по алгоритмам на coursera: www.coursera.org/learn/algori...
#алгоритмы #CтруктурыДанных #программист #разработчик #engineerspock #кнут
Курсы от EngineerSpock: www.engineerspock.com/offer-y...
Подпишись на канал bit.ly/2QBesmw

Пікірлер: 121
@user-yx8gu4hm6z
@user-yx8gu4hm6z Жыл бұрын
Сам работаю программистом. Это лучший ответ по алгоритмам, что я слышал. Спасибо.
@zelenchuk.serhii.devpro
@zelenchuk.serhii.devpro 2 жыл бұрын
Очень круто 👍 благодарю 🙏
@mikhailtochenov981
@mikhailtochenov981 2 жыл бұрын
Отлично, спасибо.
@PavelEkov
@PavelEkov Жыл бұрын
Хорошо, что рекомендательные алгоритмы ютуба рекомендовали мне Ваше видео про алгоритмы! Приятно смотреть, продолжай делать подобный контент)
@user-go5qf4vn6j
@user-go5qf4vn6j Жыл бұрын
Очень интересно было узнать о том, какие бывают собеседования и чего от них ожидать. Пример с прочтением книг и решением задач, после чего работать уже не придётся, так как состаришься быстрее - немного улыбнул.
@user-yx5nj4fw2x
@user-yx5nj4fw2x Жыл бұрын
Спасибо за контент!
@sexoticfruit
@sexoticfruit Жыл бұрын
Спасибо! Полезный видос
@romanryaboshtan9270
@romanryaboshtan9270 2 жыл бұрын
3:00 😄вообще респект, мне такие задачи попались на тестовом задании из компании, где нужно знать алгоритмы, иначе никак
@ivanpotapov9821
@ivanpotapov9821 2 жыл бұрын
Ты крут бро!) Продолжай, спасибо много полезного узнал👍👍👍🔥🔥🔥
@lemzarl5181
@lemzarl5181 2 жыл бұрын
Хороший автор. Без лишних понтов, но сразу чувствуется профессионал!
@city-dweller
@city-dweller 24 күн бұрын
Насчёт понтов - я бы поспорил: резкий, категоричный, неуверенный в себе настолько, что вынужден себе что-то доказывать, а потом самоутверждаться, опуская других (внимательно вслушайтесь в оценочные слова, которые он использует)
@nauz1984
@nauz1984 Жыл бұрын
Отлично объяснил! Крутой контент. Лайк/подписка сходу прям.
@cathello2900
@cathello2900 2 жыл бұрын
Спасибо Друг 👍👍👍👍
@alexen5465
@alexen5465 2 жыл бұрын
Сделайте такой выпуск пожалуйста...
@lil_fox
@lil_fox 2 жыл бұрын
Понимание алгоритмов развивает мышление. Этого достаточно, чтобы их изучать.
@user-zo5wo8et8d
@user-zo5wo8et8d 9 ай бұрын
да, как и математика
@city-dweller
@city-dweller 24 күн бұрын
Почему именно алгоритмы? Мышление ведь можно развивать разными способами
@andreykrauch5027
@andreykrauch5027 Жыл бұрын
Спасибо
@alekseev74
@alekseev74 2 жыл бұрын
Первый раз вижу объективное видео об алгоритмах, лайк. p.s.: подписался, не надо пожалуйста вычислять по IP.
@evgeniynorfolk5909
@evgeniynorfolk5909 Жыл бұрын
Ты крутой! Побольше тебе подписчиков!
@kredostsopozidis6338
@kredostsopozidis6338 2 жыл бұрын
Как всегда топ
@TheEasyflap
@TheEasyflap 2 жыл бұрын
Как хорошо, что мне попался Ваш канал, спасибо очень интересно )
@elenach4800
@elenach4800 Жыл бұрын
Развеял последние сомнения)) книга давно скачана, заждалась меня😆
@randerry897
@randerry897 2 жыл бұрын
Илья, спасибо за видео, а собираетесь ли вы делать курс: алгоритмы на питоне(как это сделали с C#)?
@EngineerSpock
@EngineerSpock 2 жыл бұрын
Пока в планах нет. Скоро выйдет курс по паттернам на питоне.
@randerry897
@randerry897 2 жыл бұрын
@@EngineerSpock Отлично! Буду ждать.
@alexeymanshin4034
@alexeymanshin4034 2 жыл бұрын
@@EngineerSpock напишите обязательно об этом. Я проходил Ваш курс по питону на udemy. Лучше преподавателя нет! Обязательно запишусь:)
@user-pg6mb6il1c
@user-pg6mb6il1c 2 жыл бұрын
@@EngineerSpock привет. Вышел курс?
@EngineerSpock
@EngineerSpock 2 жыл бұрын
@@user-pg6mb6il1c уже совсем скоро
@typhon3
@typhon3 2 жыл бұрын
Я ноль в программирование но собираюсь покупать курс в онлайн школах на питон разработчика . Посоветуйте ли вы в какой онлайн школе лучше покупать курс ? Где лучше обучение ? И т.д
@EngineerSpock
@EngineerSpock 2 жыл бұрын
За чужие школы ничего не могу сказать. У меня есть курсы, но без участия преподавателя.
@user-if1dj7fy2y
@user-if1dj7fy2y Ай бұрын
- Идеалист - это тот, кто, заметив, что роза пахнет лучше капусты, заключает, что и суп из нее будет лучше .
@MarchelloCSKAMoscow
@MarchelloCSKAMoscow 2 жыл бұрын
Учу питон плотно 4 месяца , недавно познакомился с классами и работе с ними. Неделю назад начал читать Грокаем Алгоритмы. Заходит очень туго. Вот не понимаю , отложить алгоритмы до лучших времён или продолжать попытки освоения?
@EngineerSpock
@EngineerSpock 2 жыл бұрын
Алгоритмы форсировать острой необходимости нет. Возвращайтесь к ним периодически пока.
@MarchelloCSKAMoscow
@MarchelloCSKAMoscow 2 жыл бұрын
@@EngineerSpock Спасибо за совет!
@avazart614
@avazart614 2 жыл бұрын
Ну книга очень слабая. Т.е. легче нету ... так что делайте выводы.
@EngineerSpock
@EngineerSpock 2 жыл бұрын
@@avazart614 а какие человек должен сделать выводы?
@MarchelloCSKAMoscow
@MarchelloCSKAMoscow 2 жыл бұрын
​@@avazart614 Меня любая книга вгоняет в уныние , не люблю читать. Мне лучше сразу приступить к практике , минуя скучную теорию. И эта книга не стала исключением. Но я её прочёл полностью и не сказал бы , что я там что то новое узнал. Всё , что там описывается , так или иначе , даётся в разных курсах и задачках. Что касается выводов - то все люди разные. Делать выводы по восприятию книги не стоит, кмк.
@sergeyyugay9794
@sergeyyugay9794 2 жыл бұрын
Мб, есть смысл создать для ребят отдельный плейлист по базовым алгоритмам и структурам данных? Кажись у тебя Илья только этого покамись не хватает как для начинающих это будет полный пак программиста чтобы начать работать.
@EngineerSpock
@EngineerSpock 2 жыл бұрын
Сделаем
@sergeyyugay9794
@sergeyyugay9794 2 жыл бұрын
@@EngineerSpock 👍🏻💪🏻
@danilrekhtin8252
@danilrekhtin8252 Жыл бұрын
@@EngineerSpock так и не появился :C
@EngineerSpock
@EngineerSpock Жыл бұрын
@@danilrekhtin8252 когда-нибудь появится)
@Dadadadam999
@Dadadadam999 Жыл бұрын
С алгоритмами рано или поздно придётся ознакомиться, потому что вы их используете каждый день в своих проектах, применяя библиотеки, например linq в C# или технологии, например sql be like. Любому программисту желательно иметь предоставление, о том какие алгоритмы реализованы под капотом. Это помогает оптимизировать свои проекты. Автор привёл хорошие примеры реальных кейсов на практике, когда они нужны.
@user-do6jt1vf5m
@user-do6jt1vf5m 2 жыл бұрын
Молодей пацан, хорошо всё разъяснил.
@alexeymanshin4034
@alexeymanshin4034 2 жыл бұрын
подписался на канал, но калакольчик почему-то не пеставляется в режим All. Пробовал несколько раз и все равно остается отключен.
@maketcity46
@maketcity46 2 жыл бұрын
Попробуй отписаться, потом подписаться заново. У меня вылечилось.
@misrerlexus
@misrerlexus 2 жыл бұрын
цярпi
@splcell
@splcell Жыл бұрын
Выглянул в окно, там одиноко стояли красно-черные деревья...я вернулся в переговорку и продолжил писать алгоритм на бумаге
@amicusdev6297
@amicusdev6297 2 жыл бұрын
Как по мне, нужно плнимать как работает, заучивание без понимания, очень тяжело идет друг с другом. А наоборот работает проще
@itzukenqwerty
@itzukenqwerty 2 жыл бұрын
я программист, в упор не понимаю, почему просьба написать код на бумажке вызывает такое отторжение у других программистов. подсказки IDE нужны? псеводокодом нельзя написать?
@wowarhont
@wowarhont 2 жыл бұрын
Мама! ... я хочу обратно в механики >_
@valentinesknaryov9805
@valentinesknaryov9805 2 жыл бұрын
Я думаю, Р. Сэджвик "Фундаментальные алгоритмы на С++" не хуже. Там две книги, 5 частей. Старенькая, 2001 года, но алгоритмы в основе всего. Бессмертны. Ещё отличные издания, на мой взгляд : "Конова Е., Поллак Г. - Алгоритмы и программы. Язык C++" (для новичков) и " Алгоритмы построение, анализ и реализация на языке программирования Си. Ворожцов А.В., Винокуров Н.А." . "Грокаем алгоритмы" вроде на Python, не знаю, искал с примерами на Си и С++. Томас Кормен тоже вроде ничего, судя по отзывам, но не читал, не знаю. Вообще, алгоритмы лучше изучать со знанием языка : Как и зачем учить алгоритмы на Java не зная саму "Яву" или "Чезу" :) знающему С++ , если ему можно Бабичева (не читал, но есть С и С++ примеры чисто алгоритмов на этих языках) читать, зная базу. Пробовал вообще без языка, теорию, не допонял. Типа "Алгоритмы: разработка и применение Клейнберг Дж., Тардос Е.".
@EngineerSpock
@EngineerSpock 2 жыл бұрын
Не хуже, в принципе. Но. Дело в том, что программист почти с любого языка поймет джава, но не каждый поймет С или С++. Поэтому издание с джава оно более универсальное.
@avazart614
@avazart614 2 жыл бұрын
@@EngineerSpock более того там даже код на С++ подустаревший не каждый С++ программист поймет.
@John_Smith_Java
@John_Smith_Java 2 жыл бұрын
7:40 Потому и пилишь видосики на ютюбе, аххахаха))) Шучу, конечно :-) Интересное и полезное видео. Спасибо.
@Anton_Zh
@Anton_Zh 18 күн бұрын
а "Грокаем алгоритмы" для поступления на джуна пойдет?
@EngineerSpock
@EngineerSpock 18 күн бұрын
Вполне, я думаю
@SmileyJack.
@SmileyJack. 2 жыл бұрын
0:51 да ну не может быть, а нет, может. Много лет слышал про 1С программистов, но впервые увидел что они пишут.
@nooricrew
@nooricrew 2 жыл бұрын
Это лишь чуть приоткрыли ящик Пандоры)
@crazy-man
@crazy-man Жыл бұрын
Поиск по списку через базы SQL базы данных делают, они просто об этом не знали
@EngineerSpock
@EngineerSpock Жыл бұрын
то есть если в приложении нет никаких баз и СУБД, то ради этой задачи вы будете затаскивать что-то пусть даже и SQLite? Но зачем? Если на каждый подобный чих тащить библиотеки и зависимости то, это ад и израиль и как тимлид я бы всех поубивал нахер.
@volodya-nrg
@volodya-nrg Жыл бұрын
Проект Эйлера. Задача 3. kzbin.info/www/bejne/rZupZWp9baqjZrs
@romanryaboshtan9270
@romanryaboshtan9270 2 жыл бұрын
Алгоритмы нужно знать, чтобы чувствовать себя программистом, а не дном каким-то непонятным. 🙂
@city-dweller
@city-dweller 24 күн бұрын
Ну т.е. это способ самоутвердиться и повысить своё ЧСВ. Может, лучше время и силы на поиск хорошего психолога потратить, а затем разобраться с ним, почему так выходит, что вам нужно что-то доказывать самому себе, а без этого вы не чувствуете себя полноценным?
@nbrains6380
@nbrains6380 Жыл бұрын
Ребята Log(2) все )
@VitalySem
@VitalySem 2 жыл бұрын
Штімель - я лусну!)
@user-ct6zd7xm8s
@user-ct6zd7xm8s Жыл бұрын
Сижу смотрю видос и понимаю, что лицо как у Дмитрия Бачилы, только поволосатей)) да и тема похожая)
@raphaelosipov867
@raphaelosipov867 11 ай бұрын
Учить алгоритмы не нужно, нужно уметь решать задачи. Возьмите leetcode и решите задачу в данных ограничениях. Когда понадобится какой-то алгоритм или структура, вот тогда и используйте конкретную вещь в конкретной ситуации. Есьи читать книги по алгоритмам, вы научитесь только читать книги по алгоритмам.
@EngineerSpock
@EngineerSpock 11 ай бұрын
Абсолютно неверно. Нодо делать и то и другое
@SM-ho5uc
@SM-ho5uc Жыл бұрын
чушь все... тру программист засунул бы словарь в SQLite и с помощью `SELECT * FROM ... WHERE sometxt MATCH` выполнил задачу и пошел курить... додян же бы сидел изобретал велосипед. плохой пример.
@EngineerSpock
@EngineerSpock Жыл бұрын
На целевых машинах было 512мб ОЗУ. Если вы бы все проблемы элементарные решали затаскиванием новых зависимостей, то всë бы кончилось очень плохо. Это не говоря о том что непонятно зачем что-то тащить если можно не тащить, просто с точки зрения управления зависимостями (их апдейтами в том числе) , развëртыванием и проч. Для реализации игры Балда тоже sqlite?
@GIMP514
@GIMP514 Жыл бұрын
Короче алгоритмы нужно учить тем, кому это нужно, а всем остальным от этого толку мало будет)
@EngineerSpock
@EngineerSpock Жыл бұрын
Неправильно вы поняли
@ResurrectedPhoenix
@ResurrectedPhoenix Жыл бұрын
Алгоритмы нужны тем, кто хочет быть программистом, а не говнокодером)
@GIMP514
@GIMP514 Жыл бұрын
@@ResurrectedPhoenix а что плохого в том, чтобы быть говнокодером?
@city-dweller
@city-dweller 24 күн бұрын
​@@ResurrectedPhoenixНаговнокодить нечитаемый код можно и со знанием алгоритмов. Я слышал, что олимпиадники по программированию пишут ужасный код. Охотно верю: они привыкли решать совсем другую задачу - написать быстро код, который быстро работает. Write only код, по сути. Про поддержку такого кода никто и не думает. Оптимизация скорости почти всегда не бесплатна и усложняет код. Если она не нужна - лучше без неё. Более читаемый и простой код дешевле поддерживать. Ну если, конечно, ты не ставишь своей целью самоутвердиться.
@John_Smith_Java
@John_Smith_Java 2 жыл бұрын
Я учил основы Java в оффлайн школе в моём городе. Там буквально после типов данных, операций, ветвления и циклов сразу хуяк - рекурсия, бинарный поиск, сортировки массивов. Если честно, я поплыл :-(
@dimr5001
@dimr5001 2 жыл бұрын
Похожая тема была. Но курсы четко позиционировались как обучения основ. И тому морально я был готов к такому но по факту было капец трудно. Но зато нормально так мозги в нужное русло вправило. Наверно если бы я не заплатил за весь курс целиком то слился бы на этом этапе. А так уже просто жалко было денег. На курсах если домашку не задал по теме дальше не пускали . Теперь в принципе рад что имею такой опыт.
@avazart614
@avazart614 2 жыл бұрын
Так только цыеточки.... Как насчет лру кешей и хеш таблиц, графов? А потом фреймворки изучай технологии сети ...
@user-ew2pd6fq8j
@user-ew2pd6fq8j 2 жыл бұрын
К программистам и к их продуктам все больше требований и они все жестче - алгоритмы и далеко не только они, 100% нужны, даже если на данный момент не применяются. В будущем "сильный программист", специалист реально востребованный и "незаменимый" будет #математикомфизикомхимикомэкономистомитд, а остальные сибариты изнеженные простотой и незатейливостью - будут заменены нейросетью или еще чего ядреней...
@Tunec_s_hlebom
@Tunec_s_hlebom 7 ай бұрын
Я фронтенд разработчик и, честно говоря, я не знаю, как можно писать фронт не зная алгоритмов и структур данных. Без знания структур данных сложно оптимально хранить данные в сторе, а без знания алгоритмов, не получится нормально без костылей их обойти. На проектах, которых я был были разные структуры: и хеш таблицы и графы, что-то хранилось даже в бинарных деревьях. Иногда челы не знают как представить данные и начинают городить всякие костыли, которые хрен разберешь
@ivanaaa6049
@ivanaaa6049 Жыл бұрын
Часто слышу про какие- то алгоритмы, которые мне ни разу не понадобились.Это чисто теоретическая хрень.
@EngineerSpock
@EngineerSpock Жыл бұрын
Может вы просто формашлëп? Реализовать то о чем я в ролике говорил сможете?
@ivanaaa6049
@ivanaaa6049 Жыл бұрын
@@EngineerSpock Видео не слушал, потому что ответ просто очевиден.
@EngineerSpock
@EngineerSpock Жыл бұрын
@@ivanaaa6049 ну просто надо смотреть видео, а не ахинею пороть
@ivanaaa6049
@ivanaaa6049 Жыл бұрын
@@EngineerSpock Ок, ты писал свой алгоритм сортировки, поиска, группировки, кластеризации, обхода графа....? Тогда зачем? Все это уже 100 раз написано и отлажено. Лучше займись полезным делом, а не бесполезной теоретической хренью.
@EngineerSpock
@EngineerSpock Жыл бұрын
@@ivanaaa6049 причëм тут свой алгоритм? Жопой смотрите?
@user-nv5ec9ch8q
@user-nv5ec9ch8q Жыл бұрын
чё за клоунство с изменением голоса
Ликбез программиста #1: Парадигмы программирования - ООП, ФП...
13:55
EngineerSpock - IT & программирование
Рет қаралды 26 М.
How To Learn Algorithms? Why? #codonaft
19:22
codonaft
Рет қаралды 558 М.
it takes two to tango 💃🏻🕺🏻
00:18
Zach King
Рет қаралды 27 МЛН
小路飞姐姐居然让路飞小路飞都消失了#海贼王  #路飞
00:47
路飞与唐舞桐
Рет қаралды 93 МЛН
BRUSH ONE’S TEETH WITH A CARDBOARD TOOTHBRUSH!#asmr
00:35
HAYATAKU はやたく
Рет қаралды 18 МЛН
Как учиться программированию эффективно?
21:35
Блеск и нищета реляционных СУБД / SQL vs NoSQL /  #1
14:18
EngineerSpock - IT & программирование
Рет қаралды 3,3 М.
Войти в IT через ИИ / Введение в ИИ
22:03
EngineerSpock - IT & программирование
Рет қаралды 2,1 М.
it takes two to tango 💃🏻🕺🏻
00:18
Zach King
Рет қаралды 27 МЛН