Всё про Алгоритмы и Структуры данных
Відкрити в Telegram
Мы не претендуем на оригинальность контента, мы лишь собираем материал из открытых источников. Ссылка: @Portal_v_IT Сотрудничество, авторские права: @oleginc, @tatiana_inc Канал на бирже: https://telega.in/c/structuredata
Показати більше7 758
Підписники
+124 години
-47 днів
-2630 день
Архів дописів
SAGE: коррекция орфографии с помощью языковых моделей
Коррекция правописания является одной из основополагающих задач в области Natural Language Processing (NLP). Достаточно прозаичная формулировка и кажущаяся жёсткой структура орфографической системы скрывают под собой нетривиальные внутриязыковые взаимодействия, являющиеся традиционно сложными для языковых моделей. В этом посте мы расскажем, как решали эту проблему внутри SberDevices, и как это привело к созданию проекта по исследованию задачи коррекции текста.
https://habr.com/ru/companies/sberdevices/articles/763932/
Алгоритмы и Структуры данных
Тестовые серверы Telegram: инструкция по эксплуатации
Эта статья — сборник разбросанной документации и результатов экспериментов. Под катом расскажу о технических особенностях тестового окружения для разработки, покажу примеры ботов и юзерботов. В качестве бонуса — история «о жизни в тестовом контуре»
https://habr.com/ru/companies/selectel/articles/763286/
Алгоритмы и Структуры данных
Поиск с помощью регулярных выражений: подход с Виртуальной Машиной
Данная статья представляет эти два подхода как два разных пути реализации ВМ, которая выполняет регулярное выражение, которое было скомпилировано в байт-коды для поиска текста. Это похоже на .NET и Mono, которые являются разными способами реализовать ВМ, которая исполняет скомпилированную в CLI байт-коды программу.
https://habr.com/ru/articles/759372/
Алгоритмы и Структуры данных
Нейронные сети для планирования движения беспилотных автомобилей
Планировщик движения беспилотного автомобиля — это алгоритм-помощник, который общается с другими участниками движения посредством манёвров. То есть он действует так, чтобы другим было понятно, куда поедет беспилотник, и сам по действиям других пытается определить, кто куда будет двигаться и почему.
https://habr.com/ru/companies/yandex/articles/763348/
Алгоритмы и Структуры данных
Простое описание популярного алгоритма кластеризации k-средних
В статье объясним всем новичкам в мире алгоритмов машинного обучения принципы работы алгоритма K-means (k-средних), пользующегося большой популярностью при решении задач кластеризации. Постараемся избавиться от устрашающих математических нюансов и объяснить на уровне интуитивного понимания.
https://proglib.io/p/obyasnite-tak-kak-budto-mne-10-let-prostoe-opisanie-populyarnogo-algoritma-klasterizacii-k-srednih-2022-12-07
Алгоритмы и Структуры данных
Извлечение текста из файлов PDF при помощи Python
Существует множество типов документов, содержащих подобные виды неструктурированной информации, от веб-статей и постов в блогах до рукописных писем и стихов. Однако существенная часть этих данных хранится и передаётся в формате PDF. В частности, выяснилось, что за каждый год в Outlook открывают более двух миллиардов PDF, а в Google Drive и электронной почте ежедневно сохраняют 73 миллионов новых файлов PDF
Поэтому разработка более систематического способа обработки этих документов и извлечения из них информации позволит нам автоматизировать процесс и лучше понять этот обширный объём текстовых данных. И в выполнении этой задачи, разумеется, нашим лучшим другом будет Python.
https://habr.com/ru/companies/ruvds/articles/765246/
Алгоритмы и Структуры данных
12 алгоритмов, которые должен знать каждый разработчик
Алгоритмы давно заняли особую нишу как в Computer Science, так и в разработке ПО. Однако какую роль они играют в жизни разработчика и что конкретно из них следует изучить и знать? Об этом вы узнаете из нашей статьи.
https://proglib.io/p/12-algoritmov-kotorye-dolzhen-znat-kazhdyy-razrabotchik-obyasnyaem-na-gifkah-2022-11-21
Алгоритмы и Структуры данных
4 основных алгоритма сравнения Git Diff: когда и какой алгоритм использовать
Обзор четырех алгоритмов git diff: Майерса, минимальный, «терпения» и гистограммный. Также приводятся наглядные примеры, чтобы можно было сравнить результат применения каждого алгоритма самостоятельно.
https://proglib.io/p/4-osnovnyh-algoritma-sravneniya-git-diff-kogda-i-kakoy-algoritm-ispolzovat-2023-06-13
Алгоритмы и Структуры данных
Сжать и не пожалеть: как работает сжатие без потерь
Более 9 миллиардов гигабайт информации ежедневно путешествуют по интернету, заставляя постоянно искать все новые и новые методы упаковки данных. Самые эффективные решения используют подходы, которые позволяют достичь большей плотности за счет "потерь" информации в процессе сжатия.
В то же время очень мало внимания уделяется сжатию без потерь. Почему? Ответ прост - методы сжатия без потерь уже невероятно эффективны. С их помощью работает буквально всё, от формата PNG до утилиты PKZip.
https://habr.com/ru/articles/763248/
Алгоритмы и Структуры данных
Распознавание по цвету
Из этой статьи вы узнаете, как рост числа параметров математической модели влияет на ее эффективность, какое решение выбрать, если на анализ объекта дается 200 миллисекунд, а также плюсы и минусы классических алгоритмов компьютерного зрения.
https://habr.com/ru/companies/jetinfosystems/articles/764178/
Алгоритмы и Структуры данных
Выбираемся из лабиринта при помощи алгоритма «поиск в ширину» (BFS) на Python
Давайте поговорим о популярном алгоритме, который называется «Поиск в ширину» (BFS). Затем реализуем этот алгоритм, чтобы найти решение для реальной задачи: как выбраться из лабиринта.
https://habr.com/ru/company/piter/blog/679020/
➕ ➕ 7 сортировок массивов по экспозиции С++ с иллюстрациями
В этой статье мы демонстрируем иллюстрацию, как работают алгоритмы сортировки: от простой пузырьковой до поисковой древовидной кучи. Также определим множественность худших и лучших случаев, а код напишем на С++.
https://proglib.io/p/7-sposobov-sortirovki-massivov-na-primere-s-s-illyustraciyami-2022-04-20
Онлайн-курс «Алгоритмы: теория и практика. Методы»
В бесплатном курсе от Computer Science Center подробно рассмотрены базовые алгоритмические методы:
— жадные алгоритмы;
— метод «разделяй и властвуй»;
— динамическое программирование.
Для прохождения курса нужно знать на базовом уровне хотя бы один язык программирования.
Курс на Stepik: https://stepik.org/course/217/promo
Задумывались ли вы, как получают таблицу судоку?
Её генерируют специальными алгоритмами (а не придумывает какой-то сонный дядя из редакции газеты).
Предлагаем вам реализовать свой генератор судоку 9x9, основа которого — простая базовая сетка, над которой проводится множество преобразований:
https://tprg.ru/g8Um
Ищем повторяющиеся элементы в массиве
Предположим, вам нужно найти дубликат элемента в массиве. Как бы вы решили эту проблему?
Сначала подумайте, а затем загляните в статью, чтобы узнать о различных способах решения: https://tprg.ru/FtTI
#алгоритмы #java
Курс по программированию классических алгоритмов на C++ для школьников
В школах нередко информатика преподаётся плохо, и учеников практически не знакомят с программированием. Но что делать, если школьник хочет писать свои программы?
Одним из вариантов являются материалы из Интернета, включая онлайн-лекции. Так, в московской школе в 2020 году лектор из МФТИ преподавал реализацию классических алгоритмов на C++. И все уроки курса он выложил в свободный доступ на YouTube:
https://tprg.ru/gqoA
Ключевые алгоритмические парадигмы для решения нестандартных задач
В спортивном программировании для решения задач используются ключевые алгоритмические парадигмы, на базе которых реализуется алгоритм решения:
— полный поиск;
— жадный алгоритм;
— «разделяй и властвуй»;
— динамическое программирование.
Подробнее о парадигмах (с примерами на C++): https://tprg.ru/Q8bw
Ключевые алгоритмические парадигмы для решения нестандартных задач
В спортивном программировании для решения задач используются ключевые алгоритмические парадигмы, на базе которых реализуется алгоритм решения:
— полный поиск;
— жадный алгоритм;
— «разделяй и властвуй»;
— динамическое программирование.
Подробнее о парадигмах (с примерами на C++): https://tprg.ru/Q8bw
Структура данных «связный список»
Связные списки по сравнению с массивами хороши тем, что могут хранить произвольное количество объектов. При этом сами объекты имеют внутри ссылку на следующий объект в списке (односвязный список), а также на предыдущий объект, если список двусвязный.
Подробнее о связных списках и их методах:
https://tproger.ru/translations/linked-list-for-beginners/
Действительно ли компьютер генерирует случайное число?
Алгоритмы, которые мы используем в своих программах для генерации случайных чисел, на самом деле выдают не совсем случайные значения. В основе генератора псевдослучайных чисел (ГПСЧ) лежит семя (seed), от которого отталкивается алгоритм.
Но существуют и другие варианты поиска случайного числа. С ними и ГСПЧ вы можете ознакомиться в статье:
https://nuancesprog.ru/p/14619/
Вже доступно! Дослідження Telegram за 2025 — головні інсайти року 
