Data Science: Алгоритмы и Структуры данных
Kanalga Telegram’da o‘tish
Мы не претендуем на оригинальность контента, мы лишь собираем материал из открытых источников. Ссылка: @Portal_v_IT Сотрудничество: @oleginc Канал на бирже: https://telega.in/c/structuredata
Ko'proq ko'rsatish7 575
Obunachilar
-424 soatlar
-187 kun
-6330 kun
Postlar arxiv
Стать тестировщиком — легко! Присоединяйтесь к бесплатному онлайн-интенсиву 23–25 января в 15:00 по московскому времени. Вы познакомитесь с профессией, разберётесь в основах тестирования и ключевых инструментах тестировщика. Проведёте свои первые тесты и поймёте, хотите ли развиваться в этом направлении.
Регистрация уже идёт: 👉 https://clc.to/V-r4OQ.
На интенсиве вы научитесь:
✔️ понимать каждый этап работы тестировщика;
✔️ разбираться в многообразии видов тестирования;
✔️ тестировать формы на сайтах;
✔️ находить ошибки в приложениях с помощью инструмента Postman;
✔️ создавать баг-репорты — понятные отчёты об ошибках.
Спикер интенсива — старший специалист по тестированию, участник конференций SQA-days, TechTrain и CodeFest Дмитрий Якин.
🎁 Участвуйте и прокачайте знания! Получите в подарок подборку полезных для начинающего тестировщика ссылок, каналов и книг при регистрации, а электронную книгу «Человек + машина» — когда дойдёте до конца интенсива.
Подключайтесь к прямым эфирам и используйте возможность получить сертификат на скидку 10 000 рублей на любой курс Skillbox.
Зачем на собеседованиях спрашивают про алгоритмы?
Причин несколько:
— В процессе работы вы можете сменить много раз язык разработки и используемые фреймворки. Но знание алгоритмов — это некая общая база, которая позволит легко переключиться между технологиями.
— Вероятно, вам дадут задачи и спросят про алгоритмы и структуры данных, которые мало используются в реальных проектах. Так компания хочет проверить, насколько вы заинтересованы в работе.
Об этом подробно рассказал разработчик, который проводит алгоритмические секции собеседований в «Яндекс»:
https://youtu.be/oB_FEwky2wo
SQL теперь в телеграм!
SQL — главный язык программирования баз данных. Базы данных есть везде: от маленького интернет-магазина до социальной сети. Знание SQL очень важно для любого программиста! Его будет легко выучить, если подписаться на официальный русскоязычный канал. Это первоисточник всего, что появляется в платных курсах и остальных ресурсах. Стоит подписаться!
Красно-чёрное дерево: что это за структура и как понять его свойства
Студенты технических специальностей часто сталкиваются с понятием красно-чёрного дерева (КЧД). Эта структура данных относится к бинарным деревьям поиска и позволяет сделать вставку, удаление и поиск нужного элемента за время O(log n).
Чтобы понять основные принципы построения КЧД, можно сначала изучить 2-3 дерево. Если его превратить в бинарное дерево, то оно будет красно-чёрным. Подробнее об этом — в статье:
https://tproger.ru/articles/ponimaem-krasno-chjornoe-derevo-chast-1-vvedenie
Научитесь смотреть на игры под другим углом! Попробуйте себя в роли геймдизайнера на бесплатном онлайн-интенсиве образовательной платформы Skillbox.
Регистрация: ✏️ https://clc.to/6h0twQ
Вы разработаете концепт своего проекта и получите обратную связь. А ещё сможете задать вопросы, на которые ответит Александр Ветушинский — преподаватель геймдизайна в НИУ ВШЭ и Институте бизнеса и дизайна В&D, эксперт лаборатории геймификации Сбербанка.
Каждому, кто зарегистрируется, отправим на почту подборку с ресурсами по поиску работы в сфере геймдева.
Всем, кто дойдёт до конца интенсива, подарим книгу «Сила эмоционального интеллекта» Адель Линн. Участвуйте, задавайте вопросы — и получите сертификат на скидку 10 000 рублей на любой курс Skillbox.
Начало интенсива — 19 января в 21:00 по московскому времени.
Визуализация 16 сортировок
Написано полностью на Java. Предупреждаем, можете залипнуть.
Исходники на GitHub: https://github.com/w0rthy/ArrayVisualizer
🎉 Вау, Google выпустил уникальный дудл в честь 5 лучших телеграм-каналов по программированию. Делимся ими с вами:
Хабр Community – самые полезные статьи и техно-обзоры прямо в Telegram. В ленту попадает только лучшее.
Google –тут вы выжмете свой гаджет на 100%. Фишки, взломы, секретные комбинации и скрытые возможности.
GIT: Сервисы для программистов – хранилище более 10.000 полезных утилит для всех, у кого есть компьютер. Почему я раньше о них не знал?
Точка входа в IT – самый крупный портал в тг для старта в программировании. Если вы думали, что айти это сложно, вам сюда.
ИИ – нейросети самая актуальная технология последнего года, тут вам расскажут о них все, будь в тренде, подписывайся.
Подписывайтесь и прокачивайте свои скиллы.
Структура данных пирамида (двоичная куча) в Java
Пирамида представляет собой дерево значений. Значение узлов в неё больше или равно значениям узлов-потомков. Поэтому верхний элемент всегда будет иметь максимальное значение
Подробнее о пирамиде и её реализации на Java:
https://javarush.ru/groups/posts/3083-strukturih-dannihkh-piramida-dvoichnaja-kucha-v-java
Данные правят миром. А SQL помогает превращать эти данные в полезную информацию.
Освоив SQL, вы сможете создавать, редактировать, обновлять базы данных и быстро выгружать информацию для анализа. Такой навык поможет вам стать универсальным специалистом и расти в профессии.
На бесплатном курсе-симуляторе «Введение в SQL и работу с базой данных» вы примерите на себя роль аналитика и узнаете:
- как хранятся данные;
- какие бывают виды баз данных и чем они отличаются;
- как подключаться к базам данных;
- как делать простые запросы в SQL;
- как создавать простые отчёты и аналитику;
Но главное — сможете самостоятельно решить реальную задачу — соберёте данные о покупателях интернет-магазина в удобную базу данных, настроите быстрый поиск информации и сформируете отчёт.
Зарегистрироваться — https://netolo.gy/QOx
Решето Эратосфена – это алгоритм нахождения простых чисел до заданного натурального числа путем постепенного отсеивания составных чисел. Образно говоря, через решето Эратосфена в процессе его тряски проскакивают составные числа, а простые остаются в решете.
Видео с объяснением этого алгоритма и его реализацией на YouTube - https://www.youtube.com/watch?v=LMc07ydUcSo&t=4s
Что почитать: «Алгоритмы. Построение и анализ» Т.Кормена и Ч.Лейзерсона
Must-have книга для любого разработчика. Начинающим программистам не обязательно читать её всю, а изучить в первую очередь виды сортировок, элементарные структуры данных, двоичные деревья и хеш-таблицы. Тем более алгоритмы разбиты по самодостаточным главам, поэтому к книге можно возвращаться время от времени, чтобы подтянуть знания.
Обзор книги - https://tprg.ru/KO4u
Что послушать: подкаст об алгоритмах и собеседованиях
Сегодня мы предлагаем послушать подкаст, где бывший сотрудник «Яндекса» Алексей Шаграев рассказал, какие алгоритмы используются в командах и почему на собеседовании задают много вопросов про алгоритмы.
Алексей имеет за плечами много опыта в собеседовании разработчиков, поэтому в подкасте много историй из реальной жизни:
soundcloud.com/podlodka/podlodka-195-algoritmy-i-sobesedovaniya
Словари и их методы в Python
Структура данных словарь хранит в себе пары «ключ-значение». При этом одному ключу может соответствовать целое множество значений.
На практики в словари могут записываться, например:
— имя и оценка студентов;
— название и цена товаров;
— название и численность населения городов.
Подробнее о словарях, а также методах работы с ними:
https://tproger.ru/explain/python-dictionaries/
Как работают алгоритмы сортировки? Разбираем с примерами на Python
Мы рассмотрели в статье наиболее популярные методы сортировки, а также сравнили их по времени исполнения.
Сохраняйте в закладки, чтобы не забыть: https://tprg.ru/VHC5
Уроки по алгоритмам сортировки в Python
Хотите разобраться в алгоритмах сортировки? Ролики ниже помогут не только освоить теорию основных алгоритмов сортировки, но и научиться их реализовывать на Python:
1. Сортировка пузырьком.
2. Сортировка слиянием.
3. Быстрая сортировка.
4. Сортировка подсчётом.
Насколько хорошо вы знаете алгоритмы?
Проверьте себя в этом тесте:
https://tproger.ru/quiz/algorithms/
Продолжение курса по дополнительным главам алгоритмов
Недавно мы делились первой частью этого курса. Вторая часть лекций рассматривает уже более продвинутый уровень:
— кратчайшие пути в графах;
— потоки, паросочетания;
— алгоритмы на строках;
— структуры данных для быстрой работы с целыми числами;
— быстрое преобразование Фурье.
В первой лекции разбираются алгоритмы для работы со строками: https://youtu.be/-tGa1Fckif8
Плейлист со всеми лекциями на YouTube: https://youtube.com/playlist?list=PLlb7e2G7aSpR7yew2YAzfbhFQL8_-G1UT
Курс лекций по дополнительным главам математики
Если вы хотите подтянуть знания по такой структуре данных, как деревья, то на YouTube есть курс лекций, которые читались в Computer Science Center осенью 2019 года (эти ребята сделали кучу бесплатных курсов на Stepik и Coursera).
В первой лекции разбирается структура данных куча: https://youtu.be/tN265RlKXVg
Плейлист с лекциями: https://youtube.com/playlist?list=PLlb7e2G7aSpTEzw546U6-Q6_2jt48ym4I
📌 Создание игры "Змейка" на С++ (видеокурс)
Как создать игру на чистом C++? В этом видеокурсе вы сделаете простую игру под названием Змейка на чистом C++. Создание игр на C++ — несложное дело, главное — понимание самих алгоритмов.
1. Создание карты
2. Расположение вещей
3. Логика игры
📄Шпаргалка по алгоритмам и структурам данных
Сохраняй себе и делись с другом!
