Data Science: Алгоритмы и Структуры данных
Відкрити в Telegram
Мы не претендуем на оригинальность контента, мы лишь собираем материал из открытых источников. Ссылка: @Portal_v_IT Сотрудничество: @oleginc Канал на бирже: https://telega.in/c/structuredata
Показати більше7 623
Підписники
-224 години
-117 днів
-4930 днів
Архів дописів
Выбираемся из лабиринта при помощи алгоритма «поиск в ширину» (BFS) на Python
Давайте поговорим о популярном алгоритме, который называется «Поиск в ширину» (BFS). Затем реализуем этот алгоритм, чтобы найти решение для реальной задачи: как выбраться из лабиринта.
https://habr.com/ru/company/piter/blog/679020/
Data Science: Алгоритмы и Структуры данных | Чат 💬
➕ ➕ 7 сортировок массивов по экспозиции С++ с иллюстрациями
В этой статье мы демонстрируем иллюстрацию, как работают алгоритмы сортировки: от простой пузырьковой до поисковой древовидной кучи. Также определим множественность худших и лучших случаев, а код напишем на С++.
https://proglib.io/p/7-sposobov-sortirovki-massivov-na-primere-s-s-illyustraciyami-2022-04-20
Data Science: Алгоритмы и Структуры данных | Чат 💬
Онлайн-курс «Алгоритмы: теория и практика. Методы»
В бесплатном курсе от Computer Science Center подробно рассмотрены базовые алгоритмические методы:
— жадные алгоритмы;
— метод «разделяй и властвуй»;
— динамическое программирование.
Для прохождения курса нужно знать на базовом уровне хотя бы один язык программирования.
Курс на Stepik: https://stepik.org/course/217/promo
Data Science: Алгоритмы и Структуры данных | Чат 💬
Задумывались ли вы, как получают таблицу судоку?
Её генерируют специальными алгоритмами (а не придумывает какой-то сонный дядя из редакции газеты).
Предлагаем вам реализовать свой генератор судоку 9x9, основа которого — простая базовая сетка, над которой проводится множество преобразований:
https://tprg.ru/g8Um
Data Science: Алгоритмы и Структуры данных | Чат 💬
Ищем повторяющиеся элементы в массиве
Предположим, вам нужно найти дубликат элемента в массиве. Как бы вы решили эту проблему?
Сначала подумайте, а затем загляните в статью, чтобы узнать о различных способах решения: https://tprg.ru/FtTI
#алгоритмы #java
Data Science: Алгоритмы и Структуры данных | Чат 💬
Курс по программированию классических алгоритмов на C++ для школьников
В школах нередко информатика преподаётся плохо, и учеников практически не знакомят с программированием. Но что делать, если школьник хочет писать свои программы?
Одним из вариантов являются материалы из Интернета, включая онлайн-лекции. Так, в московской школе в 2020 году лектор из МФТИ преподавал реализацию классических алгоритмов на C++. И все уроки курса он выложил в свободный доступ на YouTube:
https://tprg.ru/gqoA
Data Science: Алгоритмы и Структуры данных | Чат 💬
Фантастические графы и какими они бывают
С графами мы часто сталкиваемся в реальном мире. Например, выше — часть карты московского метро, которая представляет собой большой граф с узлами и рёбрами.
Из статьи вы поймёте, из чего состоит граф и на какие виды они делятся:
https://tprg.ru/PIeJ
Data Science: Алгоритмы и Структуры данных | Чат 💬
Введение в криптографию и шифрование
Когда-то материал из этой лекции читали в МГУ целых полгода. Поэтому в статье автор не углублялся в работу шифров и рассказал об общих терминах в криптографии и шифровании, а также разобрал простым языком несколько алгоритмов шифрования:
https://tprg.ru/KCPw
Лекция на YouTube: https://youtu.be/mE_s-R5wvpw
Data Science: Алгоритмы и Структуры данных | Чат 💬
Структура данных «очередь» (queue) — принципы работы
С понятием очереди вы наверняка хорошо знакомы. В программировании она используется для обработки данных, запросов и событий в том порядке, в котором они попали в очередь.
Подробнее об этой структуре данных поясняется в ролике: https://youtu.be/fmHyFTji-Lc
Data Science: Алгоритмы и Структуры данных | Чат 💬
Как платить за границей и за зарубежные сервисы в 2026 году?
Можно переплачивать посредникам 10–15%, возить в отпуск пачку наличных и каждый раз гадать, пройдёт ли оплата. А можно выпустить международную карту Lumio Pay и платить как раньше.
— выпуск в Telegram за 2 минуты
— пополнение рублями по СБП или в USDT
— курс виден до оплаты (выгоднее конкурентов на 15-18%)
— отели, такси, подписки, нейросети и игры — одной картой
Подписчикам — персональная скидка 50% на выпуск карты.
Выпустить карту → @LumioPay
Визуализация 10 алгоритмов на графах
Изучаете теорию графов? В статье вы найдёте 10 гифок, которые наглядно покажут принципы работы алгоритмов на графах:
https://tprg.ru/ryXJ
Так, например, выглядит поиск в глубину:
Data Science: Алгоритмы и Структуры данных | Чат 💬
Алгоритмы и структуры данных: примеры реализаций на JavaScript
Если вы изучаете JavaScript, загляните в репозиторий на GitHub, в котором собраны реализации структур данных и множества популярных алгоритмов. К каждому алгоритму приложено короткое пояснение, которое поможет разобраться в коде.
Весь материал разделён на два уровня: для начинающих и для продвинутых:
https://github.com/trekhleb/javascript-algorithms
Data Science: Алгоритмы и Структуры данных | Чат 💬
Как разобраться в Computer Science
Computer Science — программирование, математика и всё, что связано с разработкой программного обеспечения.
В этом гайде рассказываем:
— Какие дисциплины следует изучать и почему?
— Какие из доступных ресурсов, книг, серий лекций для конкретной дисциплины имеет смысл посмотреть?
Data Science: Алгоритмы и Структуры данных | Чат 💬
Принципы работы различных видов очередей
Недавно мы разбирали простую очередь как структуру данных. У неё существует также несколько усложнённых версий:
— кольцевая очередь, в которой из элемента в начале очереди извлекаются данные, а затем его переносят в конец очереди;
— очередь с приоритетом, в которой сначала обрабатываются по очереди элементы с наивысшим приоритетом, а затем с меньшим.
Оба типа очередей наглядно разбираются в ролике: https://youtu.be/y_2toG5-j_M
Data Science: Алгоритмы и Структуры данных | Чат 💬
Двоичное (бинарное) дерево поиска
Структуры данных «деревья» широко распространены в программировании, например каталог проекта или DOM-дерево в веб-разработке.
Среди них особенно выделяется двоичное дерево поиска, которое позволяет существенно ускорить поиск элементов.
Подробнее о структуре двоичного дерева и его реализации в коде:
https://tprg.ru/YpfD
Data Science: Алгоритмы и Структуры данных | Чат 💬
Оценка сложности алгоритма проще, чем кажется
Если вы изучали различные алгоритмы (например, сортировки массивов), то наверняка встречали запись в духе O(n*logn). Это и есть оценка сложности алгоритма. Она показывает, насколько быстро растёт сложность алгоритма с увеличением размера входных данных.
В статье разбираются основные порядки роста, а также что нужно замерять для оценки сложности: https://tprg.ru/LQI2
Data Science: Алгоритмы и Структуры данных | Чат 💬
Создание и обход двоичного дерева, а также реализация на JavaScript
Двоичное дерево состоит из корня (верхний элемент), внутренних узлов и листьев (узлы без потомков). Оно подчиняется определённым правилам, благодаря чему происходит быстрый поиск элементов.
Статья поможет реализовать на JavaScript двоичное дерево и организовать обход его узлов:
https://tprg.ru/09wZ
Data Science: Алгоритмы и Структуры данных | Чат 💬
Хотите освоить визуализацию данных на реальных задачах — попробуйте бесплатный курс-симулятор от Нетологии и Yandex.Cloud.
Ваш персонаж — аналитик в крупной ритейл-компании, а каждое занятие — история с прописанным сюжетом. Вы построите интерактивную карту клиентов в DataLens, соберете отчёт-конструктор расходов в Excel, сравните показатели в Power BI, а в конце наведёте красоту в Tableau. Узнаете много нового и познакомитесь с основными инструментами визуализации данных.
А ещё ваш дашборд может выиграть приз, подробнее → https://netolo.gy/lge
Data Science: Алгоритмы и Структуры данных | Чат 💬
Как вычислить числа Фибоначчи?
На собеседовании по алгоритмам могут попросить реализовать вывод ряда Фибоначчи. Он строится по следующему правилу: первые два элемента равны 0 и 1, а каждый последующий элемент равен сумме двух предшествующих.
В статье показано, как вычислить числа Фибоначчи на Java тремя способами — циклом, рекурсией и с помощью Stream:
https://tprg.ru/sAUb
Data Science: Алгоритмы и Структуры данных | Чат 💬
Ключевые алгоритмические парадигмы для решения нестандартных задач
В спортивном программировании для решения задач используются ключевые алгоритмические парадигмы, на базе которых реализуется алгоритм решения:
— полный поиск;
— жадный алгоритм;
— «разделяй и властвуй»;
— динамическое программирование.
Подробнее о парадигмах (с примерами на C++): https://tprg.ru/Q8bw
Data Science: Алгоритмы и Структуры данных | Чат 💬
