Всё про Алгоритмы и Структуры данных
7.76K subscribers
344 photos
37 videos
5 files
3.15K links
Мы не претендуем на оригинальность контента, мы лишь собираем материал из открытых источников.

Ссылка: @Portal_v_IT

Сотрудничество, авторские права: @oleginc, @tatiana_inc

Канал на бирже: https://telega.in/c/structuredata
Download Telegram
Как мы научили навигатор лучше понимать намерения водителя

Раньше любое отклонение от маршрута — и пользователи слышали упрямое «Развернитесь»! Мы решили изменить этот подход.Новый алгоритм в нашем навигаторе:
1️⃣ использует дискриминацию маршрута,
2️⃣ применяет предпочтение рёбер,
3️⃣ учитывает контекст: случайные отклонения, движение по дворам, выбор маршрута,
4️⃣ и включает/отключает алгоритмы по умным триггерам.

Всё это, чтобы навигация в 2ГИС стала удобнее.Подробнее о математике и эвристиках — в статье.
Инженерный подход к тестированию алгоритмов: исследовательский анализ рабочего процесса. Часть 2

Как мы уже говорили в первой части, для демонстрации анализа алгоритма в более широком контексте примером послужит расстояние редактирования Левенштейна. Расстояние редактирования также иногда называют поиском похожих строк (или нечетким поиском). Это метрика редактирований (изменений символов), необходимых для преобразования одной строки в другую (целевую) строку. Из самых известных применений алгоритма можно выделить предоставление предложений по правильному написанию, нечеткий поиск по строке поискового запроса и сравнение последовательностей ДНК/РНК.

https://habr.com/ru/companies/otus/articles/653293/

Алгоритмы и Структуры данных
Стеганографические эксперименты с видеофайлами и Youtube

Сможет ли собственная стеганографическая pet-поделка выдержать тесты и успешно пройти через жернова внутренних верификаций и преобразований Youtube, который решено было выбрать в качестве видеохостинга для наукообразных экспериментов? Можно ли в конечном итоге использовать Youtube для альтернативного хранения видеоданных? Данная заметка постарается если не закрыть полностью ответы на эти вопросы, то по крайней мере через натурный эксперимент проиллюстрировать потенциальные возможности, которые могут оказаться скрытыми за простыми предположениям относительно организации хранения и обработки видеоданных.

https://habr.com/ru/articles/651905/

Алгоритмы и Структуры данных
👍1
Что считать счастьем покупателя?

Я работаю над качеством поиска в Яндекс.Маркете. И качество поиска прямо связано с ощущением счастья пользователя от шопинга. Счастье нужно измерять. Самый очевидный способ — посмотреть, купил ли что-нибудь пользователь. Но мы не всегда приходим в магазин или на Маркет, чтобы взять что-то конкретное.

https://habr.com/ru/companies/yandex/articles/651751/

Алгоритмы и Структуры данных
Как мы подняли сквозную конверсию с 20 до 33% с помощью алгоритмов AI?

Серьёзная проблема для сервиса бронирований — прямые платежи от клиентов площадкам по заявкам, пришедшим через маркетплейс. Из-за этого компания лишается своей комиссии. Стандартные инструменты выявления подобных схем, такие как опрос пользователей, сбор обратной связи после мероприятий и так далее, имеют ограниченную эффективность, так как осуществляются случайным образом. Поэтому нашей R&D-команде ¹ была поставлена задача повысить эффективность проверок с помощью алгоритмов AI. ²

https://habr.com/ru/articles/651817/

Алгоритмы и Структуры данных
Как раскрасить вершины графа

Для начала обсудим все необходимые понятия. ПустьV — это некоторое множество, а E — множество, состоящее из неупорядоченных пар\{v,w\} элементов множестваV. Тогда графом называется пара(V,E). При этомVназывается множеством вершин графа, аE — множеством рёбер графа. Вершиныv, w\in Vназываются смежными, если они соединены ребром, то есть\{v,w\}\in E.

Рассмотрим граф, состоящий из трех вершин, которые попарно соединены ребрами. Множество вершин такого графа имеет вид V=\{x_1, x_2, x_3\}, а множество рёбер — E=\{ \{x_1,x_2\}, \{x_1,x_3\}, \{x_2,x_3\} \}. Все вершины у графа являются смежными. Удобно представить себе этот граф, изобразив его на плоскости.

https://habr.com/ru/articles/651793/

Алгоритмы и Структуры данных
День Святого Валентина: Как найти девушку при хайтек-эмиграции в «Силиконовый Лес» в Портленд, Орегон?

Silicon Forest в штате Орегон не так известен как Silicon Valley в Калифорнии, но он несомненно входит в топ-5 хайтек-мест в США. Просто факт из Википедии: хотя штаб-квартира Интела остается в Калифорнии, но еще в 1990-х компания начала переносить самую продвинутую разработку микроархитектуры в Орегон. Как очевидец, могу сообщить банальную причину: в начале интернет-бума цены на дома в Долине выросли вдвое, а потом втрое, и агломерация вокруг Портланда стала ближайшим местом бегства из Калифорнии для инженеров, которые хотели купить дом, но не хотели переучиваться на джаву и становиться дотком-миллионерами.

Но "Кремниевым Лесом" окресности Портленда назвали еще до описываемых событий. После второй мировой войны там выросла компания-производитель осциллографов Tektronix, а в начале 1980-х годов - производитель софтвера для проектировщиков микросхем Mentor Graphics (сейчас Siemens EDA). Чуть позже в Лесу возник производитель ПЛИС Lattice, а потом подтянулись японские компании: Fujitsu, Epson, NEC. Наконец, там сделали отделения IBM и HP, и "Кремниевый Лес" состоялся.

https://habr.com/ru/articles/651583/

Алгоритмы и Структуры данных
Как мы разработали гибкий пайплайн для прогноза временных рядов любых метрик

Меня зовут Александр Елизаров, я работаю в группе аналитики ключевых показателей в бизнес‑группе Поиска и рекламных технологий. В течение нескольких лет нам приходилось прогнозировать большое количество временных рядов разных доменных областей: от поисковой доли Яндекса до DAU определённых сервисов. Чтобы успешно справляться с этой задачей, мы вместе с коллегами разработали собственный прогнозный фреймворк. В этой статье я расскажу, как создать универсальный и гибкий пайплайн для прогнозирования.

https://habr.com/ru/companies/yandex/articles/930014/

Алгоритмы и Структуры данных
Немного про SPARQL, или как мы заняли призовое место на Text-To-SPARQL Challenge на ESWC 2025

Мы — Даниил Березин и Роман Авдеев, магистранты кафедры банковских информационных технологий в МФТИ (СберТех).

В рамках дипломной работы под руководством кандидата технических наук, научного сотрудника группы «Прикладное NLP» AIRI Олега Сомова мы участвовали в соревновании Text‑To‑SPARQL Challenge на конференции ESWC 2025 (Порторож, Словения).

Среди 9 команд из ведущих европейских исследовательских центров мы заняли:

🥉 3-е место в треке DBPedia

🏅 5-е место в треке с корпоративным графом знаний

В этой статье расскажем, как проходило соревнование, какие подходы мы пробовали и какие уроки извлекли.

https://habr.com/ru/companies/airi/articles/926518/

Алгоритмы и Структуры данных
Массивы в Pine Script: что это такое, как создавать, использовать и исправлять ошибки

Продолжаем знакомиться с TradingView, языком Pine Script и мудростями, которые помогут вам создавать собственные пользовательские индикаторы и стратегии. Соответственно, использовать их в торговле на любом рынке – будь то криптоактивы, национальный рынок акций или т.п.

https://habr.com/ru/articles/930842/

Алгоритмы и Структуры данных
Понижение ключевой ставки до 18% и парадокс рубля: анализ через призму кода

За последние два года ЦБ сначала поднимал ключевую ставку (процент, по которому Центральный банк даёт кредиты коммерческим банкам) до рекордных 21 % годовых, чтобы сдержать инфляцию (устойчивый рост общего уровня цен). А к июлю 2025 эту ставку понизили до 18 %, потому что инфляция начала сдавать. Казалось бы, снижение кредита-ставки — это благо для рубля: стало дешевле брать займы, бизнес оживился бы, и иностранцы потянулись бы за высокодоходными бумагами. Но в России всё вышло не так: рубль вовсе не взмыл вверх, а по сути остался в том же коридоре или даже слегка ослаб. Давайте разберёмся, почему.

https://habr.com/ru/articles/931150/

Алгоритмы и Структуры данных
Алгоритм проталкивания предпотока: как найти максимальный поток в сети (для начинающих)

Сегодня мы разберём ещё один крутой алгоритм для поиска максимального потока — алгоритм проталкивания предпотока (Push‑Relabel). Если алгоритм Форда‑Фалкерсона — это как если бы вы искали дорогу в городе с фонариком, а алгоритм Диница — как если бы вы строили уровни и шли по ним этажами, то проталкивание предпотока — это как если бы вы взяли гидравлический домкрат и начали «выдавливать» воду из источника!

Представьте, что у вас есть система водопроводных труб, и вы хотите прокачать максимальное количество воды из водонапорной башни в городской район. Но вместо того чтобы искать пути и аккуратно направлять воду, вы решили действовать по‑другому: накачать воду под давлением в башню и позволить ей «выдавливаться» через трубы, постепенно находя оптимальные пути. Это и есть идея алгоритма проталкивания предпотока!

https://habr.com/ru/articles/927704/

Алгоритмы и Структуры данных
Два вида последовательного перебора пикселей

Пространство плоскости часто делят на квадраты. Или, наоборот, квадратные вещи собирают вместе. Наверняка у кого-нибудь уже возникала идея собрать гирлянду из квадратных светильников и с помощью неё заполнить светом фигуру выбранной формы, с квадратными элементами детализации, как пикселями. Такой квадратный светильник может быть устроен так, что с предыдущим и следующим светильником соединён углами одного ребра.

https://habr.com/ru/articles/597261/

Алгоритмы и Структуры данных
Нерекурсивная выборка всего дерева Adjacency List

Предлагаемые решения формирования массива дерева с помощью указателей, конечно, позволяют избавиться от лишних запросов к базе, но увы не исключают рекурсию, пусть по массиву, но все же. А у нас…

https://habr.com/ru/articles/67942/

Алгоритмы и Структуры данных
Динамическое программирование: как щелкать задачки как орешки

Готов узнать, как решать задачки, от которых плавятся мозги? В этой статье раскрываем тайну происхождения термина «динамическое программирование» и показываем основные подходы к решению задач, которые часто встречаются на собеседованиях и соревнованиях.

https://proglib.io/p/dinamicheskoe-programmirovanie-kak-shchelkat-zadachki-kak-oreshki-2024-09-25

Алгоритмы и Структуры данных
Дикие технологии, или как ИИ считал сусликов да рыбов Кроноцкого заповедника

В начале декабря мы были организаторами хакатона WildHack – wild, потому что проводился он совместно с Кроноцким заповедником. Школьники, студенты и проскилованные специалисты три дня думали, как посчитать всех рыбов, сусликов и по-другому оцифровать работу природоохранных зон Камчатки. Все это время мы были в тесном контакте с ребятами и наблюдали за каждым их шагом – нашей команде понравились и задачи, и решения участников.

В посте покажем несколько кейсов команд – под наше увеличительное стекло попали два решения на основе нейронных сетей (одно отлавливает медведей на фотоловушках, а другое подсчитывает рыб) и таймлайн новостей Камчатки за последние 20 лет (расскажем, зачем вообще такое понадобилось).

https://habr.com/ru/companies/croc/articles/651391/

Алгоритмы и Структуры данных
Вычисление стихотворного размера

Привет, Хабр. Я последние пару лет играюсь с естественной речью на русском языке. Решил поделиться своим опытом по работе с поэзией. Будет две статьи: вот эта и про рифму (когда дойдут руки всё доделать).

Половина программистов, прочитав заголовок, скорее всего подумала, что задача очень простая: сравнить две маски. Но есть нюансы, которые сильно влияют на результат, и о них то я и расскажу.

https://habr.com/ru/articles/651395/

Алгоритмы и Структуры данных
Граф знаний LinkedIn’s Economic Graph и его Star2Vec-эмбеддинги

Здесь я представляю поверхностный обзор статьи, вышедшей в уже далёком (по научным меркам) 2019-м году: "Representation Learning in Heterogeneous Professional Social Networks with Ambiguous Social Connections". Т. к. это лишь поверхностный обзор, от читателя требуются следующие познания:

Skip-gram и его адаптация под графы (word2veс, LINE, DeepWalk);

общие понятия о графах знаний.

В указанной статье частично представлена структура графа LinkedIn’s Economic Graph и относительно подробно описан метод обучения эмбеддингов Star2Vec. К сожалению, исходного кода авторы не предоставили, поэтому в статье есть несколько непонятных моментов (лично для меня), на которые я укажу ниже.

https://habr.com/ru/articles/651283/

Алгоритмы и Структуры данных
Компрессия битового потока

Расскажу про нашу разработку, которая изменит подход к обработке данных.

Мы разработали новый математический алгоритм обработки данных и программный продукт на его базе (кодек), позволяющий работать со сжатием битовых потоков любого формата (статические/динамические) – то есть, кодек позволяет проводить более глубокое сжатие уже существующих файлов (видео, изображения, архивы и т.д.), так и осуществлять сжатие исходных «сырых» данных.

Заложенная в алгоритме обработка представляет собой механизм квантования с применением многоцентричной развертки и алфавита изображения. Такой подход кардинально отличается от всех существующих на сегодня вариантов сжатия данных, базирующихся на принципе энтропийного сжатия.

https://habr.com/ru/articles/651197/

Алгоритмы и Структуры данных
1
Proof-of-Union — алгоритм консенсуса в блокчейн системах базируемый на сотрудничестве узлов

В настоящее время существует огромное количество консенсус алгоритмов для блокчейн систем, каждый из которых имеет свои преимущества и недостатки присущие только ему, либо целому классу сходных алгоритмов. Так или иначе, в данное время лидирует две концепции консенсуса - основанные на майнинге (PoW) [1] и форжинге (PoS) [2], которые в свою очередь представляют конкурентную и последовательную модели генерации блоков непосредственно. Такое разделение либо предполагает крайне большое расходование материальных ресурсов, либо представляет собой необходимость комбинации с другими методами консенсуса [3], что приводит к сложности реализации, а следовательно и к проблеме доказуемой безопасности конечного решения [4, с.319]. Альтернативной моделью конкуренции и последовательности может являться алгоритм объединения узлов (PoU), решающий общую задачу сообща и главным преимуществом которого является простота реализации, сродни PoW и быстрота генерации блоков, эквивалентная PoS.

https://habr.com/ru/articles/651187/

Алгоритмы и Структуры данных
Градиентный поиск коэффициентов квадратической регрессии

Мое основное увлечение - это аэрокосмос. И "космические" задачи - выведение полезных грузов на орбиту, возврат с орбиты через атмосферу являются функциями от целого набора параметров. К примеру, управление РН на первой ступени даже в двухмерной (без учета изменения азимута и dog-leg маневра)описывается по меньшей мере через 5 переменных:

https://habr.com/ru/articles/651147/

Алгоритмы и Структуры данных