Data Science: Алгоритмы и Структуры данных
Открыть в Telegram
Мы не претендуем на оригинальность контента, мы лишь собираем материал из открытых источников. Ссылка: @Portal_v_IT Сотрудничество, авторские права: @oleginc, @tatiana_inc Канал на бирже: https://telega.in/c/structuredata
Больше7 717
Подписчики
Нет данных24 часа
-147 дней
-1830 дней
Архив постов
Инженерный подход к тестированию алгоритмов: исследовательский анализ рабочего процесса. Часть 2
Как мы уже говорили в первой части, для демонстрации анализа алгоритма в более широком контексте примером послужит расстояние редактирования Левенштейна. Расстояние редактирования также иногда называют поиском похожих строк (или нечетким поиском). Это метрика редактирований (изменений символов), необходимых для преобразования одной строки в другую (целевую) строку. Из самых известных применений алгоритма можно выделить предоставление предложений по правильному написанию, нечеткий поиск по строке поискового запроса и сравнение последовательностей ДНК/РНК.
https://habr.com/ru/companies/otus/articles/653293/
Алгоритмы и Структуры данных
Как мы научили навигатор лучше понимать намерения водителя
Раньше любое отклонение от маршрута — и пользователи слышали упрямое «Развернитесь»! Мы решили изменить этот подход.Новый алгоритм в нашем навигаторе:
1️⃣ использует дискриминацию маршрута,
2️⃣ применяет предпочтение рёбер,
3️⃣ учитывает контекст: случайные отклонения, движение по дворам, выбор маршрута,
4️⃣ и включает/отключает алгоритмы по умным триггерам.
Всё это, чтобы навигация в 2ГИС стала удобнее.Подробнее о математике и эвристиках — в статье.
Случайные лабиринты и сапёр от третьего лица, инопланетные жуки и алгоритм Брезенхема
Уже больше 30 лет я занимаюсь разработкой видеоигр и регулярно экспериментирую с различными игровыми механиками. В результате я пришел к идее создать игру по типу сапёра, но от третьего лица и на roguelike подобном уровне.
Исследуя большое пространство, нужно собирать сокровища, разбираться с обитателями и охранной системой. При этом важно избегать ловушек, которые можно вычислить по цифрам. Как в игре «Сапёр».
Игра получилась на удивление играбельной, извините за тавтологию. Интересное сочетание экшена/аркады и паззла/адвенчуры. Разрешите рассказать вам о паре алгоритмических задач, возникших при генерации уровней. Сами алгоритмы простые. Однако интересно именно то, что их можно использовать в игре.
По мере написания статьи я делал анимированные иллюстрации и тестовый уровень, который вставил в игру. Получилось, что в результат этой статьи можно поиграть. Буду рад, если вам будет интересно, весело и/или полезно.
https://habr.com/ru/articles/653515
Алгоритмы и Структуры данных
Оптический спидометр
Измерение линейной скорости транспортных средств, оторванных от опоры и движущихся вдали от навигационных систем, является непростой задачей. Например, как измерить скорость космического аппарата? Имеются разные способы для этого: по доплеровскому сдвигу частоты зондирующего сигнала, анализом последовательности изображений с камер корабля близлежащих небесных тел, интегрированием сигнала с бортового акселерометра и др. На практике в основном применяют доплеровские методы. В них используются передатчик и приёмник зондирующего сигнала, размещённые на Земле (радарная станция) или на самом КА. В обоих случаях требуется небесное тело, относительно которого измеряется скорость. При дальних космических путешествиях доплеровские методы использовать затруднительно, т. к. мощность передатчика и чувствительность приёмника сигнала ограничены. Для применения метода измерения скорости по изображениям небесных тел нужны эти небесные тела поблизости и данные об их скорости, что также может быть проблемой. Метод интегрирования ускорения по сигналу с акселерометров становится неактуальным при длительном путешествии с гравитационными манёврами.
https://habr.com/ru/articles/653483/
Алгоритмы и Структуры данных
Готовый код за 4 часа или за 4 минуты?
Решать тебе. Но рынок всё равно поставит на тех, кто кодит с нейросетями.
Большинство айтишников тратят время на шаблонный код, типовые решения и бесконечные правки — вместо того, чтобы сосредоточиться на логике продукта.
На бесплатном эфире с СЕО университета Зерокодер покажет, как применять Cursor для ускорения разработки — от быстрого написания кода до автоматизации рутинных задач программиста.
Что ждет вас на вебинаре?
– Разберём, что такое вайб-кодинг и как Cursor уже меняет правила игры на IT-рынке;
– Пошагово покажем, как программировать в Cursor, не написав ни единой строки кода вручную;
– Создадим готовый проект с нуля своими руками;
– Расскажем, где и как правильно применять эти знания в 2025 году.
Все участники получат готовые инструменты для работы с нейросетями. Эфир подойдет всем, кто хочет сэкономить время, монетизировать навыки и оставаться в тренде технологий 2025 года.
Один из самых свежих и бесплатных эфиров лета 2025 года ждет вас по ссылке.
Случайные лабиринты и сапёр от третьего лица, инопланетные жуки и алгоритм Брезенхема
Уже больше 30 лет я занимаюсь разработкой видеоигр и регулярно экспериментирую с различными игровыми механиками. В результате я пришел к идее создать игру по типу сапёра, но от третьего лица и на roguelike подобном уровне.
Исследуя большое пространство, нужно собирать сокровища, разбираться с обитателями и охранной системой. При этом важно избегать ловушек, которые можно вычислить по цифрам. Как в игре «Сапёр».
Игра получилась на удивление играбельной, извините за тавтологию. Интересное сочетание экшена/аркады и паззла/адвенчуры. Разрешите рассказать вам о паре алгоритмических задач, возникших при генерации уровней. Сами алгоритмы простые. Однако интересно именно то, что их можно использовать в игре.
По мере написания статьи я делал анимированные иллюстрации и тестовый уровень, который вставил в игру. Получилось, что в результат этой статьи можно поиграть. Буду рад, если вам будет интересно, весело и/или полезно.
https://habr.com/ru/articles/653515
Алгоритмы и Структуры данных
Биомимикрия: как природные структуры вдохновляют инженеров на создание новых технологий. Часть 2
Природа остаётся величайшим источником инженерных решений, вдохновляя учёных и разработчиков на создание технологий, меняющих мир. От микроскопических слизевиков до крыльев бабочек — биомимикрия открывает новые горизонты, позволяя нам переосмысливать материалы, структуры и механизмы.
В этой статье мы продолжаем рассказывать вам о том, как природные механизмы вдохновляют на создание новых технологий. Впереди ещё больше примеров, где биология, физика и инженерия пересекаются, рождая инновации будущего.
https://habr.com/ru/companies/sberbank/articles/928764/
Алгоритмы и Структуры данных
Алгоритм поиска самой длинной подстроки-палиндрома
Один из самых прекрасных алгоритмов в информатике, который показывает, как можно получить большое ускорение от "вялого" O(n3) до молниеносного1 O(n), просто посмотрев на проблему с другой точки зрения.
Задача состоит в том, чтобы найти самую длинную подстроку, которая является палиндромом (читается одинаково слева направо и справа налево, например, "racecar"). Так, самый длинный палиндром в строке "Fractions are never odd or even" это "never odd or even" (регистр букв и пробелы игнорируются). Это также имеет практическое применение в биохимии (ГААТТЦ или ЦТТААГ являются палиндромными последовательностями2). К тому же, эту задачу3 часто дают на собеседовании.
https://habr.com/ru/articles/653617/
Алгоритмы и Структуры данных
В России можно посещать бесплатные IT-мероприятия хоть каждый день: как оффлайн, так и онлайн.
Чтобы не пропустить полезные — сохраните каналы
1. Бесплатные IT мероприятия
2. IT мероприятия Москва
3. IT мероприятия Санкт Петербург
Анализ финансовых ботов, можно ли заработать?
Для ответа на вопрос заработка при помощи торговых ботов, я потратил достаточно большое количество времени на изучение фондового и криптовалютных рынков. Если вкратце - любое свободное время вне своей работы и семьи уходило на торговлю. К сегодняшнему дню у меня открыты и пополнены счета на Тинькофф инвестициях, Interactive Brokers, Binance, Alpaca (здесь только демо счет для нерезидентов США), Okex и форекс клубе, премиум на TradingView. С каждым из них я использовал торговых ботов в меньшей или большей степени, изучал их API, трейдинг в целом и методы алгоритмической торговли.
Чтобы ответить на вопрос эффективности ботов, я потратил много времени на исследования в области нейросетей, алгоритмической торговли, крипто-трейдинга и могу теперь сделать выводы для дальнейших исследований и практического применения.
https://habr.com/ru/articles/654165/
Алгоритмы и Структуры данных
Том Сойер играет в сортировку (QuickSort)
Вместо предисловия: вчера сын попросил объяснить на пальцах работу алгоритма QuickSort. В результате появился наглядный пример, в котором удалось показать и общую логику работы и процесс распараллеливания задачи.
https://habr.com/ru/articles/655161/
Алгоритмы и Структуры данных
💋 Kiss Знакомства - настоящий бот знакомств в Telegram!
1. Удаляем Дайвинчик!
2. Забываем про Tinder!
3. Заходим в Kiss! 👈 (нажимай)
Листаем анкетки, и ищем настоящие отношение!
Программирование необычных шахмат
Написание своего шахматного движка - обширная тема, про которую пишут целые книги.
Однако очень многие шахматные программы работают со "стандартными" правилами шахмат и не могут работать при других правилах, хотя существуют сотни вариаций шахмат.
В этой заметке я покажу, каким образом можно написать достаточно быстрый и гибкий шахматный движок на С++, в котором можно задавать произвольный размер доски, расположение фигур, и создавать новые типы шахматных фигур.
Я запрограммировал 15 шахматных вариаций - для каждой опишу неожиданные ходы и результаты партий компьютера друг с другом.
https://habr.com/ru/articles/654745/
Алгоритмы и Структуры данных
Как найти плагиат в контестах по программированию
Многие (особенно в постсоветских странах) относятся к списыванию довольно беззаботно. Ученики в школах, студенты в университетах, а затем и специалисты в своей работе заимствуют чужие идеи и решения, не чувствуя вины за обман. Между тем плагиат — это не безобидное «подумаешь, списал», а серьезная проблема, которая ведет к мошенничеству и коррупции [1, 2].
Существует множество инструментов, направленных на поиск плагиата в текстах, изображениях и промышленном коде, которые показывают отличные результаты. Но в программировании есть область — решение олимпиадных задач — где применение этих инструментов никогда не изучали. В посте я расскажу об одном из самых перспективных алгоритмов поиска плагиата GPLAG и как я исследовала его применимость в олимпиадном программировании.
https://habr.com/ru/companies/hsespb/articles/655437/
Алгоритмы и Структуры данных
Логистика. Часть 4. Пришло ли время авиации измениться? Как научиться управлять ценой?
Для авиаотрасли 2020 год стал худшим за всю историю ее существования. Из-за COVID-19 более чем на половину сократилось воздушное сообщение, количество маршрутов и общая выручка. Черный лебедь в белой маске, так называют этот кризис. В очередной раз мир «вдруг» снова напомнил всем нам о своей сложности и непредсказуемости. Пожалуй, единственное, чем этот кризис отличается от всех предыдущих, так это растущей убежденностью в том, что мы больше не можем всецело полагаться на простые детерминированные модели. Безусловно, очень трудно учитывать случайность и неопределенность в своих планах и решениях, но только сумасшедший захочет еще раз проверить, во сколько нам обойдется очередное «Авось!»
https://habr.com/ru/articles/653355/
Алгоритмы и Структуры данных
Чтобы решать «нерешаемые» задачи, нужно знать алгоритмы
Артём Мурадов — Senior Software Development Engineer в Amazon и автор курса «Алгоритмы: roadmap для работы и собеседований». Уже больше 14 лет он использует алгоритмы для решения рабочих задач и прохождения собеседований. С помощью алгоритмов он повышал производительность приложений, побеждал в спорах с коллегами и ускорял исследование ДНК. Даже попасть в Amazon ему помогло знание алгоритмов.
Мы пообщались с Артёмом, чтобы узнать о его опыте. Он подробно рассказал, как изучал алгоритмы и как они помогали ему в работе.
https://habr.com/ru/companies/slurm/articles/655927/
Алгоритмы и Структуры данных
Ошибки любят молчать. Твоя задача — их разговорить
Большинство багов остаются в продукте, потому что их не заметили. А ты заметишь.
Есть один курс, который за пару вечеров научит подходу: не просто «кликать» по интерфейсу, а мыслить как тестировщик — сомневаться, искать уязвимости и находить, где всё ломается.
Ты потренируешься искать логику, проверять границы, ломать сценарии — и делать это не ради вредности, а ради качества.
Пройди курс и пойми, как заработать на умении быть внимательным. Это, кстати, редкий и дорогой навык.
Алгоритм Томасуло как фактор импортозамещения российских процессоров
Проектированием простого процессора сейчас никого не удивишь. Любой способный студент может за пару недель написать на верилоге однотактный RISC-V или ARM процессор и синтезировать его для ПЛИС. Процессор будет работать на учебной плате и выполнять простые программы на Си и ассемблере.
https://habr.com/ru/articles/655911/
Алгоритмы и Структуры данных
Репликация с нуля за 5 простых шагов (невозможна)
Меня зовут Сергей Петренко, я работаю в команде кластерных технологий Tarantool. В прошлом году я рассказывал о том, как в Tarantool появилась синхронная репликация и поддержка автоматических выборов лидера на основе Raft. Теперь предлагаю погрузиться во «внутренности» репликации в Tarantool. Я расскажу, как устроена репликация, по какой логике она работает и почему самые очевидные решения не всегда самые оптимальные.
Если вы давно хотели углубиться в эту тему и разобраться в устройстве репликации на живом примере, то эта статья для вас.
https://habr.com/ru/companies/vk/articles/652159/
Алгоритмы и Структуры данных
Эзотерическая оптимизация газа в Solidity
Программирование в Солидити отличается от других языков, так как каждое инструкция и байт памяти тратят газ - деньги пользователей. В сети уже есть много ресурсов с основными техниками оптимизации кода (например, стараться использовать calldata вместо memory), но я хочу показать несколько совсем безумных и неочевидных.
Понять о чем я говорю без базового опыта в solidity будет очень сложно, но может быть эти оптимизации проявят в вас интерес в ethereum программировании.
https://habr.com/ru/articles/656269/
Алгоритмы и Структуры данных
