Всё про Алгоритмы и Структуры данных
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
Распространенные ошибки при создании приложений с генерацией ИИ

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

Эти ошибки являются распространенными, поэтому, если вы работали над каким-либо продуктом, связанным с ИИ, вы, вероятно, уже сталкивались с ними.

https://habr.com/ru/companies/piter/articles/987774/

Алгоритмы и Структуры данных
За пределами LLM: детерминированный движок рассуждения на конечном алфавите

Часть 1. Детерминированный движок рассуждения на конечной таблице операции (в перспективе — замена LLM)
Когда речь заходит о больших языковых моделях, все сразу отмечают их талант к сочинению и пересказу текстов. Но вот встроить такую модель в реальный продукт — задача куда более каверзная, чем кажется на первый взгляд. На практике вылезают три системных «подводных камня», из‑за которых работать с ними бывает откровенно неудобно.

Первый камень — непредсказуемость. Представьте: вы посылаете модели один и тот же запрос дважды — а в ответ получаете два разных варианта. И это не случайность, а закономерность. Виной тому целый веер причин: от "памяти" о предыдущих диалогах (контекст) до тонких настроек генерации и естественного "плавания" внутренних весов модели. В итоге результат зависит не только от вашего запроса, но и от кучи невидимых факторов.

Второй момент — проблема с проверкой. В обычном программном коде мы чётко знаем: вот входные данные, вот ожидаемый вывод, вот критерии успеха. С языковыми моделями такой ясности нет. Как доказать, что ответ "правильный", если у задачи может быть десяток равноценных решений? Где та грань, за которой креативность превращается в выдумку?

Третий сюрприз ждёт после обновлений. Допустим, вы полгода отлаживали интеграцию, подобрали идеальные параметры, написали кучу тестов — и тут разработчики выпускают новую версию модели. И вдруг всё начинает работать иначе: прежние запросы дают странные ответы, тесты падают один за другим. Дело в том, что даже небольшие изменения в обучении модели могут кардинально поменять её "стиль" и логику. Предсказать, как именно она поведет себя в вашем сценарии, почти невозможно — а значит, каждое обновление грозит превратиться в марафон по починке сломавшегося

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

Алгоритмы и Структуры данных
Создание сервера для онлайн ММО игр на PHP ч.13 — Event-driven паттерн, JSON-RPC и почему не сервисная (SOA) архитектура

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

В этой статье я без привязки к коду объясню простым языком и в картинках как можно применять в разработке архитектуры авторитарного сервера для онлайн игр шаблон проектирования Event-driven.

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

Алгоритмы и Структуры данных
SQL отработал, но цифры не сходятся?

SQL Логи бизнеса — канал про реальные рабочие задачи аналитика

Здесь:
🔸ловушки с собеседований
🔸разборы запросов, которые «работают, но не так как надо»
🔸кейсы из банковской аналитики
🔸тесты

Канал ведёт действующий банковский аналитик с опытом работы в Сбере и Т-Банке и с дипломом ВШЭ

Если вам нужен SQL для работы и собеседований — добро пожаловать в SQL Логи бизнеса

Вот некоторые посты с канала:
1. Самая частая ошибка джунов
2. Когда запрос работает, но выдает не то, что вы ожидаете
3. Когда действительно нужен self-join
4. 8 ресурсов, где искать работу в 2026 году
2
JavaScript Live-Coding: Мастерство решения типовых задач на собеседованиях

Искусство live-coding в JavaScript становится все более важным для успешной карьеры веб-разработчика. Если ты стремишься преуспеть на собеседованиях и проявить свои навыки в реальном времени, то эта статья для тебя. Я предлагаю тебе углубиться в мир типовых задач на собеседованиях в разделе live-coding, где ты сможешь проявить свои знания JavaScript. В этой статье мы рассмотрим популярные задачи, подходы к их решению и дам полезные советы, которые помогут тебе справиться с этим вызовом. Давай начнем погружение в мир JavaScript и подготовимся к успешным собеседованиям!

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

Алгоритмы и Структуры данных
Как зарабатывать на бирже, не предсказывая цену: математика против ML-интуиции

Недавно я пробовал машинное обучение на Московской бирже, пытаясь найти полезные признаки и при этом опираясь в поисках этих признаков на советы ИИ ассистентов, а поиск самого алгоритма переложил на ML.

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

Многие в статье про машинное обучение на Московской бирже пришли ко мне с советами или с критикой моего подхода в комментариях, но один человек связался со мной и подсказал, что на рынок можно смотреть совершенно по‑другому. Без угадывания цен, без работы с таймфреймами, опираясь только на цену.

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

Алгоритмы и Структуры данных
🔥1
Как Питолис мир создавал

ВНИМАНИЕ!!! Здесь у меня представлен прототип, который мне кажется интересным сам по себе. По-хорошему, его следует ещё долго доводить до ума. Может, когда-нибудь, я вернусь к нему с новыми силами.

Карту я решил делать максимально логичной и физичной. То есть, реки должны течь строго сверху вниз, а дороги между городами - петлять между холмов и огибать пустыни, а не идти напрямик. План у меня в итоге получился примерно таким:

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

Алгоритмы и Структуры данных
🔥1
Генетический алгоритм как инструмент инженера: практический кейс раскроя полотен

Перед вами лист материала и список деталей, которые нужно из него вырезать. Металл, ткань, пластик, стекло — не важно. Задача одна: разместить прямоугольники так, чтобы отходов было минимум.

Ручной подбор вариантов отнимает часы, а полный перебор невозможен. Часто останавливаешься на первом более-менее удачном варианте, хотя чувствуешь — должно быть лучше.

Что если делегировать эту рутину компьютеру? Не просто перебор, а «умный» поиск, похожий на естественный отбор в природе.

Генетический алгоритм — именно такой инструмент. В этой статье я покажу, как с помощью Python и простых принципов эволюции автоматизировать поиск оптимального раскроя. Без сложной математики — только практика: от задачи к коду, от кода к результату.

Вы увидите, как алгоритм находит решения, которые экономят материал, время и нервы. И может это натолкнет вас на мысль, как применить этот подход к своим производственным задачам.

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

Алгоритмы и Структуры данных
👍2
Оптимизация маршрутов доставки заказов маркетплейса или как мы победили в E-CUP 2025

Хабр, привет! Недавно завершилось ML-соревнование E-CUP 2025. Наша команда из X5 Tech заняла первое место в треке «Логистика: автопланирование курьеров», где было нужно оптимизировать время, затрачиваемое курьерами на доставку 20 000 заказов. В статье расскажем про подходы, которые использовали для решения этой задачи. Посмотрим, во сколько раз можно сжать JSON с матрицей расстояний. Какой код мы использовали для быстрого решения задачи TSP с помощью LKH-3. Обсудим, на что обращать внимание при кластеризации заказов.

https://habr.com/ru/companies/X5Tech/articles/989466/

Алгоритмы и Структуры данных
Почему Andrej Karpathy использует SVM в 2026 году (и вам тоже стоит)

Andrej Karpathy — один из ведущих специалистов в области глубокого обучения и компьютерного зрения. Он ранее занимал должность Director of AI в Tesla, где руководил командой Autopilot Vision, и является соавтором и основным преподавателем курса Stanford CS231n (Convolutional Neural Networks for Visual Recognition) — одного из самых влиятельных академических курсов по нейросетям. Его опыт охватывает как фундаментальные исследования, так и практическое применение современных нейросетевых моделей в промышленности.

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

Алгоритмы и Структуры данных
👍1
Идентификация звёзд и при чём тут сингулярное разложение

И знаете, с этим трудно не согласиться! Сингулярное разложение матриц (Singular Value Decomposition) используется в алгоритмах сжатия данных, теории автоматического управления, машинного обучения и много где ещё. Поскольку SVD не является главным объектом исследования данной статьи, я предоставляю читателю возможность самостоятельно ознакомиться с примерами ниже. Если же сингулярное разложение не вызывает вопросов, то перейдём к самому интересному!

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

Алгоритмы и Структуры данных
👍1
Вероятности и .NET: сравниваем библиотечные решения для оценки спортивных событий и не только

Как вычисляется шанс того, что теннисист возьмёт следующий гейм? Или что футбольная команда забьёт гол в течение пяти минут? Всё это — не просто угадайка, а работа математической модели, построенной на статистике и обрабатывающей события матча в реальном времени.

В Altenar, разработчике решений для зарубежных операторов спортивных прогнозов, такие модели — часть большой системы. Моя команда работает над реализацией алгоритмов расчёта таких вероятностей.

В этой статье рассказываю, как формулируется гипотеза, как из неё строится модель, почему это важнее, чем «просто посчитать формулу», и как мы выбирали между несколькими .NET-библиотеками по точности и скорости. Всё на примере тенниса. Это один из самых сложных видов спорта для моделирования: стандартные подходы здесь не работают, счёт специфический, а сила игрока выражается не в счёте, а в вероятности взять очко на своей подаче.

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

Алгоритмы и Структуры данных
Задача коммивояжёра — ещё немного больше, ещё немного быстрее

И снова здравствуйте, уважаемые читатели Хабра. Мы продолжаем наше путешествие в мир алгоритмов поиска оптимального пути.

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

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

Алгоритмы и Структуры данных
👍1
Разделяй и властвуй. Повышение эффективности алгоритмов. Часть 2

На примере из прошлой части, попробуем сформулировать и обобщить принцип «Разделяй и властвуй». Мы беремся за проблему, размера n, делим эту проблему на подзадачи размером n/b. Количество таких подзадач обозначим числом a. И еще имеется задача скомпоновать результаты выполнения этих a задач размером n/b в итоговый результат для задачи размера n, который будем считать задачей полиномиальной сложности степени c, O(nc) . Если задача компоновки будет не полиномиальной, то все изложение резко усложнится. Поэтому, давайте позволим задаче компоновки быть полиномиальной, тем более в это попадает очень большое количество алгоритмов.

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

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