Типичный программист
81.4K subscribers
2.67K photos
894 videos
8 files
7.45K links
Всё самое интересное по программированию

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

VK: vk.com/tproger

Регистрация в перечне РКН: https://tprg.ru/mJwo
Download Telegram
Как лучше всего изучать алгоритмы?

За всю историю программирования сложился джентльменский набор наиболее подходящих решений для практических задач, который должен знать каждый разработчик. Например, пузырьковая сортировка неплоха для небольших массивов, но при работе с огромными массивами данных она неизбежно проиграет быстрой сортировке.

Но как изучить их все и не запутаться? Спросили у экспертов: https://tprg.ru/G94U

#алгоритмы
Если хотите проверить свои знания в самых разных направлениях в IT-индустрии, вот целая вам подборка годных тестов с нашего сайта:

— Блокчейн: https://tproger.ru/quiz/blockchain-with-waves/
— Серверная инфраструктура: https://tproger.ru/quiz/choose-infrastructure-dataline/
— Пентестинг: https://tproger.ru/quiz/pentesting/
— ИИ: https://tproger.ru/quiz/test-your-knowledge-of-ai/
Алгоритмы: https://tproger.ru/quiz/algorithms/
— Проверка на программиста: https://tproger.ru/quiz/real-programmer/

А посмотреть вообще все тесты можно в этом разделе: https://tproger.ru/quiz/

#тест #безопасность #ии #алгоритмы #блокчейн
Что почитать на выходных: «Алгоритмы. Справочник. С примерами на C, C++, Java и Python», 2-е издание

Книга поможет понять, что наибольший вклад в производительность программы вносят правильно выбранный алгоритм и его реализация. А выбор подходящего алгоритма, способного решить вашу задачу, — дело далеко не из самых простых. Всё с примерами на C, C++, Java и Python.

#алгоритмы #книги #си #cpp #java #python
Ловите целый бесплатный ​курс лекций по алгоритмам, который поможет прокачаться в работе с большими наборами данных.

Из курса вы узнаете о теоретических (модели вычислений, иммутабельность и персистентность, хеширование и не только) и практических (задача о кратчайших путях, RMC, LCA) аспектах алгоритмов. Последнее обновление курса — меньше месяца назад: https://tprg.ru/xMH7

#алгоритмы #курсы
Интересный инструмент, который позволяет ​​​​​визуализировать поиск пути в клетчатом лабиринте

Можно построить свой лабиринт и посмотреть, как работают различные алгоритмы поиска пути в графе. Начальные и конечные точки можно двигать, а работу самих алгоритмов можно настроить.

Исходники проекта открыты, поиграться можно тут: https://qiao.github.io/PathFinding.js/visual/

#opensource #алгоритмы #инструменты
​Алгоритмическая секция на собеседовании: на что обращать внимание?

Алгоритмические задачи — частые гости на собеседованиях. И здесь мало просто написать корректный код за небольшое количество времени, надо ещё и объяснить, как он работает.

И вот несколько дельных советов, которые в этом помогут: https://habr.com/ru/company/avito/blog/662922/

#алгоритмы #собеседование
Что почитать на выходных: «Совершенный алгоритм. Основы»

Если давно собирались разобраться с алгоритмами, то вот вам знак. Книга — отличное введение в основы алгоритмов. Много практики, упражнений на закрепление материала и разборов решений. Особенно приятно, что объяснение не привязано к каком-либо языку программирования.

#алгоритмы #книги
​​Алгоритмы сортировки — одна из самых популярных тем на собеседованиях

А зачем вообще нужны алгоритмы сортировки, если исключить собеседования? Как часто мы применяем их на практике, а если и применяем, то правильно ли?

Давайте разбираться: https://tproger.ru/articles/zachem-nuzhny-algoritmy-sortirovki/

#задачки #собеседование #алгоритмы
Что почитать на выходных: «Эффективные алгоритмы и сложность вычислений» Н. Кузюрина и С. Фомина

Существует несколько способов измерения сложности алгоритма. Программисты обычно смотрят на скорость алгоритма, но важны и другие показатели — объём памяти или, например, свободное место на диске. Использование быстрого алгоритма не приведёт к ожидаемым результатам, если для его работы понадобится больше памяти, чем есть у компьютера.

Эта книга как раз поможет разобраться как с классическими алгоритмами для нестандартных задач, так и с новыми результатами, полученными в последние годы.

#алгоритмы #книги
Что-то временно, что-то постоянно, а что-то — алгоритмы и структуры данных

Вне зависимости от того, какой язык вы изучаете, есть фундаментальные вещи типа алгоритмов и структур данных, которые хотя бы в общих чертах понимать обязательно.

Как лучше всего их изучать? Рассказываем: https://tproger.ru/experts/how-to-learn-algorithms/

#алгоритмы
Кстати про алгоритмы сортировки

Если ещё не знаете, что это такое и зачем нужно, собрали для вас подборку полезных статей, инструментов и курсов, которые помогут разобраться с алгоритмами.

— Зачем вообще нужны алгоритмы сортировки и как часто на самом деле их применяют на практике (кроме собеседований, разумеется): https://tproger.ru/articles/zachem-nuzhny-algoritmy-sortirovki/

— Как лучше изучать алгоритмы: https://tproger.ru/experts/how-to-learn-algorithms/

— Большой бесплатный и, самое главное, свежий ​курс лекций по алгоритмам: https://tprg.ru/xMH7

— Крутой инструмент, который позволяет вкратце понять, как именно и с какой скоростью работают разные алгоритмы сортировки при разных стартовых условиях: https://tprg.ru/xGsk

— Бонус. Поясняем за StackSort — мемную сортировку массива через Stack Overflow: https://tproger.ru/articles/stacksort/

#алгоритмы #сортировка #инструменты #курсы
Media is too big
VIEW IN TELEGRAM
Времена идут, визуализации алгоритмов сортировки становятся всё более странными, но всё же продолжают быть очень залипательными

И вот очередная визуализация 19-ти алгоритмов сортировки. На этот раз на примере круга.

Кстати, если вдруг захотели реализовать что-то подобное (а это отличная практика как в алгоритмах, так и в программировании), вот исходники проекта: https://github.com/CompilerStuck/sorting-visualizer

#сортировка #алгоритмы