Data Science: Алгоритмы и Структуры данных
رفتن به کانال در Telegram
Мы не претендуем на оригинальность контента, мы лишь собираем материал из открытых источников. Ссылка: @Portal_v_IT Сотрудничество: @oleginc Канал на бирже: https://telega.in/c/structuredata
نمایش بیشتر7 575
مشترکین
-324 ساعت
-197 روز
-6630 روز
آرشیو پست ها
Онлайн-курс «Алгоритмы: теория и практика. Методы»
В бесплатном курсе от Computer Science Center подробно рассмотрены базовые алгоритмические методы:
— жадные алгоритмы;
— метод «разделяй и властвуй»;
— динамическое программирование.
Для прохождения курса нужно знать на базовом уровне хотя бы один язык программирования.
Курс на Stepik: https://stepik.org/course/217/promo
Задумывались ли вы, как получают таблицу судоку?
Её генерируют специальными алгоритмами (а не придумывает какой-то сонный дядя из редакции газеты).
Предлагаем вам реализовать свой генератор судоку 9x9, основа которого — простая базовая сетка, над которой проводится множество преобразований:
https://tprg.ru/g8Um
#алгоритмы #python
Ищем повторяющиеся элементы в массиве
Предположим, вам нужно найти дубликат элемента в массиве. Как бы вы решили эту проблему?
Сначала подумайте, а затем загляните в статью, чтобы узнать о различных способах решения: https://tprg.ru/FtTI
#алгоритмы #java
Курс по программированию классических алгоритмов на C++ для школьников
В школах нередко информатика преподаётся плохо, и учеников практически не знакомят с программированием. Но что делать, если школьник хочет писать свои программы?
Одним из вариантов являются материалы из Интернета, включая онлайн-лекции. Так, в московской школе в 2020 году лектор из МФТИ преподавал реализацию классических алгоритмов на C++. И все уроки курса он выложил в свободный доступ на YouTube:
https://tprg.ru/gqoA
#cpp #алгоритмы
Фантастические графы и какими они бывают
С графами мы часто сталкиваемся в реальном мире. Например, выше — часть карты московского метро, которая представляет собой большой граф с узлами и рёбрами.
Из статьи вы поймёте, из чего состоит граф и на какие виды они делятся:
https://tprg.ru/PIeJ
#алгоритмы #математика
Введение в криптографию и шифрование
Когда-то материал из этой лекции читали в МГУ целых полгода. Поэтому в статье автор не углублялся в работу шифров и рассказал об общих терминах в криптографии и шифровании, а также разобрал простым языком несколько алгоритмов шифрования:
https://tprg.ru/KCPw
Лекция на YouTube: https://youtu.be/mE_s-R5wvpw
Из-за чего работодатели отказывают начинающим бизнес-аналитикам?
Команда Яндекс Практикума опросила 15 представителей разных компаний, которые собеседуют новичков на должность бизнес-аналитика. Оказалось, многим джунам отказывают, потому что:
— у них мало опыта проведения интервью с заказчиками;
— они не могут разговорить собеседника;
— они не умеют слушать, слышать и понимать людей;
— у них нет критического и структурного мышления;
— они не умеют работать в команде.
Работодатели часто считают, что новичка несложно научить SQL, основным нотациям и другим хардам. А вот учить софтскилам — сложнее и дольше.
На основе опроса Практикум разработал курс для бизнес-аналитиков. Он помогает прокачать харды и софты, которых ждут от новичков работодатели. Студенты проведут около 20 интервью, соберут и опишут требования клиентов, презентуют решения и рассчитают финансовую выгоду. А ещё — поработают в паре с системным аналитиком.
→ Курс можно попробовать бесплатно. Если захотите продолжить — до января включительно действует ранняя цена.
Структура данных «очередь» (queue) — принципы работы
С понятием очереди вы наверняка хорошо знакомы. В программировании она используется для обработки данных, запросов и событий в том порядке, в котором они попали в очередь.
Подробнее об этой структуре данных поясняется в ролике: https://youtu.be/fmHyFTji-Lc
#алгоритмы
Визуализация 10 алгоритмов на графах
Изучаете теорию графов? В статье вы найдёте 10 гифок, которые наглядно покажут принципы работы алгоритмов на графах:
https://tprg.ru/ryXJ
#алгоритмы
Так, например, выглядит поиск в глубину:
Алгоритмы и структуры данных: примеры реализаций на JavaScript
Если вы изучаете JavaScript, загляните в репозиторий на GitHub, в котором собраны реализации структур данных и множества популярных алгоритмов. К каждому алгоритму приложено короткое пояснение, которое поможет разобраться в коде.
Весь материал разделён на два уровня: для начинающих и для продвинутых:
https://github.com/trekhleb/javascript-algorithms
Как разобраться в Computer Science
Computer Science — программирование, математика и всё, что связано с разработкой программного обеспечения.
В этом гайде рассказываем:
— Какие дисциплины следует изучать и почему?
— Какие из доступных ресурсов, книг, серий лекций для конкретной дисциплины имеет смысл посмотреть?
Принципы работы различных видов очередей
Недавно мы разбирали простую очередь как структуру данных. У неё существует также несколько усложнённых версий:
— кольцевая очередь, в которой из элемента в начале очереди извлекаются данные, а затем его переносят в конец очереди;
— очередь с приоритетом, в которой сначала обрабатываются по очереди элементы с наивысшим приоритетом, а затем с меньшим.
Оба типа очередей наглядно разбираются в ролике: https://youtu.be/y_2toG5-j_M
#алгоритмы
Двоичное (бинарное) дерево поиска
Структуры данных «деревья» широко распространены в программировании, например каталог проекта или DOM-дерево в веб-разработке.
Среди них особенно выделяется двоичное дерево поиска, которое позволяет существенно ускорить поиск элементов.
Подробнее о структуре двоичного дерева и его реализации в коде:
https://tprg.ru/YpfD
❗️Срочно нужен человек который будет лайкать фото! Зарплата 4500 рублей/день. Работа из дома. Срочно! Всем от 16 лет и старше!
У них открыты лучшие удаленные вакансии на должности:
- Помощник менеджера - от 4000₽/день
- Администратор каналов - от 4500₽/день
- Редактор текстов - от 3000₽/день
- Дизайнер - от 3500₽/день
А также множество других удаленных-фриланс вакансий! 💻📱
Не тяни, подписывайся на их канал и найди работу мечты, среди самых крутых вакансий интернета уже сегодня! 🔥🔥👇🏻
https://t.me/+LMN8jyFPL7g2ZTA8
Оценка сложности алгоритма проще, чем кажется
Если вы изучали различные алгоритмы (например, сортировки массивов), то наверняка встречали запись в духе O(n*logn). Это и есть оценка сложности алгоритма. Она показывает, насколько быстро растёт сложность алгоритма с увеличением размера входных данных.
В статье разбираются основные порядки роста, а также что нужно замерять для оценки сложности: https://tprg.ru/LQI2
Создание и обход двоичного дерева, а также реализация на JavaScript
Двоичное дерево состоит из корня (верхний элемент), внутренних узлов и листьев (узлы без потомков). Оно подчиняется определённым правилам, благодаря чему происходит быстрый поиск элементов.
Статья поможет реализовать на JavaScript двоичное дерево и организовать обход его узлов:
https://tprg.ru/09wZ
Хотите освоить визуализацию данных на реальных задачах — попробуйте бесплатный курс-симулятор от Нетологии и Yandex.Cloud.
Ваш персонаж — аналитик в крупной ритейл-компании, а каждое занятие — история с прописанным сюжетом. Вы построите интерактивную карту клиентов в DataLens, соберете отчёт-конструктор расходов в Excel, сравните показатели в Power BI, а в конце наведёте красоту в Tableau. Узнаете много нового и познакомитесь с основными инструментами визуализации данных.
А ещё ваш дашборд может выиграть приз, подробнее → https://netolo.gy/lge
Как вычислить числа Фибоначчи?
На собеседовании по алгоритмам могут попросить реализовать вывод ряда Фибоначчи. Он строится по следующему правилу: первые два элемента равны 0 и 1, а каждый последующий элемент равен сумме двух предшествующих.
В статье показано, как вычислить числа Фибоначчи на Java тремя способами — циклом, рекурсией и с помощью Stream:
https://tprg.ru/sAUb
