Всё про Алгоритмы и Структуры данных – Telegram
Всё про Алгоритмы и Структуры данных
7.94K subscribers
328 photos
36 videos
5 files
2.79K links
Мы не претендуем на оригинальность контента, мы лишь собираем материал из открытых источников.

Ссылка: @Portal_v_IT

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

Канал на бирже: https://telega.in/c/structuredata
Download Telegram
🔥Горячие IT вакансии которых нет на HH.

Вакансии только с прямыми контактами в Telegram! Ноль автоотказов — живой диалог и быстрые объективные решения.

🤖 ML & DS 👩‍💻 DevOps

👩‍💻 Java 👣 Go

👩‍💻 Mobile 👩‍💻 C#

👩‍💻 Node.js 👩‍💻 Python

🔎 QA 👨‍✈️ CyberSec

👩‍💻 UX/UI 👩‍💻 Frontend

🖼️ PHP 📋 Analyst

💼 1C 🖥 SQL

👩‍💻 IT HR

Подпишись чтобы не упустить свой шанс получить лучший оффер!
Please open Telegram to view this post
VIEW IN TELEGRAM
MAESTRO — новый фреймворк для построения мультиагентных систем и цифровых ассистентов на основе LLM

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

Построением таких систем заняты многие команды по всему миру. Чтобы ускорить прогресс в этом направлении и помочь коллегам, мы в группе «Мультимодальные архитектуры ИИ» AIRI создали новый фреймворк под названием MAESTRO — Multi‑Agent Ecosystem of Task Reasoning and Orchestration. Мы представили его на конференции AI Journey 2025, которая прошла в Москве на прошлой неделе.

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

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

Алгоритмы и Структуры данных
Многие сложные задачи на LeetCode — это простые задачи на ограничения

Я реализовал простой жадный алгоритм и сразу попался в ловушку этого вопроса: жадный алгоритм работает только для «хорошо устроенных» наборов номиналов. Если номиналы равны [10, 9, 1], то для 37 центов жадный алгоритм возьмёт 10 монет, а оптимальное решение — 4 монеты (10+9+9+9). «Правильный» ответ — использовать алгоритм динамического программирования, которому я тогда был не обучен. Поэтому я провалил собеседование.

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

Алгоритмы и Структуры данных
Алгоритмы нужны программистам, или cамая быстрая и простая реализация RMQ

Недавно встретилась по работе интересная задача, прямо на те самые презираемые на интервью алгоритмы. Очередное доказательство, что, по крайней мере, в Гугле алгоритмы нужны. А значит и интервью по ним вообще-то не оторваны от реальности.

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

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

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

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

Например, если вы храните строки в ASCII, вы не можете представить «∀∃🦔», а если в Unicode — длина строки уже становится не вполне однозначной. Будем считать, что Unicode более «способен» (выразителен), а ASCII — более «разрешим» (с ним проще строго рассуждать).

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

Каноничный пример — иерархия по вычислительной мощности. Тезис Чёрча — Тьюринга утверждает, что машина Тьюринга — самая мощная из автоматов: если некоторая задача разрешимости (decision problem, задача с ответом «да/нет») неразрешима машиной Тьюринга, её нельзя решить ни на какой реализуемой вычислительной системе. Теорема об остановке гласит, что не существует алгоритма, который по произвольной машине Тьюринга и произвольному входу определяет, остановится эта машина или нет.1

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

Алгоритмы и Структуры данных
Мы тут ChatGPT с Midjoney обьединили и в телеграм интегрировали!

Бот подключен сразу к двум нейросетям и буквально за секунду сгенерирует любой ваш запрос. Вы найдете его в закрепе канала Нейрофлоу | VEO 3.1 | ChatGPT 5, где ежедневно публикуются обновления и новости связанные с нейросетями

Самое вкусное в закрепе - Нейрофлоу | VEO 3.1 | ChatGPT 5
Fizz Buzz на косинусах

Fizz Buzz — это игра с числами, которая стала неожиданно популярной в мире компьютерного программирования в качестве простой проверки базовых навыков. Правила игры просты: игроки вслух произносят по порядку числа, начиная с единицы. Если число делится на 3, игрок должен сказать вместо него «Fizz». Если число делится на 5, он должен сказать «Buzz». Если оно делится и на 3, и на 5, игрок говорит «FizzBuzz». Вот типичная программа на Python, выводящая нужную последовательность:

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

Алгоритмы и Структуры данных
Джун наоборот или разоблачение главного мифа вайб-кодинга

Было очень интересно, и меня задело одно утверждение докладчика. Оно заключалось в том, что ИИ может помочь писать простые куски кода, но не работает со сложными вещами. Таким образом, большие языковые модели уподобляются программисту-джуну.

Решил с утра накатать об этом статью, опираясь на свои знания и опыт в вычислительной математике (в прошлом занимался моделированием, а последние несколько лет преподаю вычислительную математику в МФТИ), оцените, что получилось.

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

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

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

Алгоритмы и Структуры данных
Неожиданная эффективность условных вероятностей

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

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

Алгоритмы и Структуры данных
В этой одежде системы распознавания будут считать вас животным

У Рэйчел Дидеро интересный набор навыков: несколько степеней в области дизайна одежды (полученные в школах трех разных стран) и докторская степень в области машинного обучения Миланского политехнического университета.

Эти знания позволили ей выпустить коллекцию — довольно уродливой — одежды Manifesto. Она страшная и безвкусная, зато в ней вы становитесь нераспознаваемые для ML-алгоритма детектирования Yolo, активно используемого для работы с уличными камерами.

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

Алгоритмы и Структуры данных
🤯1
О вреде GOTO-фобии (с примерами на C)

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

Каждая собака знает (уже мемородный) заголовок статьи Дейкстры Letters to the editor: go to statement considered harmful («О вреде оператора Go To») (изначально эта статья называлась A case against the goto statement). Но, как правило, забывают, в каком контексте была в 60-е написана эта статья. Ведь те вещи, которые сегодня воспринимаются как данность, тогда были в новинку.

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

Алгоритмы и Структуры данных
Истинная сложность алгоритма Bubble Sort

При изучении алгоритмов сортировок, возник вопрос об общепринятой оценке сложности, а так же к примерам реализации. И эти вопросы возникли сразу на первой сортировке Пузырьком. Заговор? Невнимательность? Небрежность? Шутка?

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

Алгоритмы и Структуры данных
Алгоритмы быстрого умножения чисел: от столбика до Шенхаге-Штрассена

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

И уж конечно, никогда при написании a * b мы не задумываемся о том, как реализовано умножение чисел a и b в нашем языке. Какие вообще есть алгоритмы умножения? Это какая‑то нетривиальная задача?

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

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

Алгоритмы и Структуры данных
1
Джун наоборот или разоблачение главного мифа вайб-кодинга

Было очень интересно, и меня задело одно утверждение докладчика. Оно заключалось в том, что ИИ может помочь писать простые куски кода, но не работает со сложными вещами. Таким образом, большие языковые модели уподобляются программисту-джуну.
Решил с утра накатать об этом статью, опираясь на свои знания и опыт в вычислительной математике (в прошлом занимался моделированием, а последние несколько лет преподаю вычислительную математику в МФТИ), оцените, что получилось.

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

Алгоритмы и Структуры данных
SQL HowTo: немного математики (Advent of Code 2025, Day 1: Secret Entrance)

Сегодня стартовал Advent of Code 2025!

Осторожно, спойлеры! Не читайте, пока хотите решить задачу самостоятельно.

В этой челлендж-серии статей, начатой с прошлогоднего эвента, попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2025.

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

https://habr.com/ru/companies/tensor/articles/972046/

Алгоритмы и Структуры данных
Как свергнуть короля: формула для линейной альтернативы Трансформеру без побочных эффектов

На связи Андрей Аргаткин, руководитель научной группы исследований эффективных архитектур нейронных сетей ИМШ ВШЭ. Я хочу рассказать о нашем текущем исследовании в рамках совместного образовательного проекта с VK. В ходе исследования мы надеемся выделить волшебную формулу из недавней архитектуры DANet (1, 2) и экстраполировать её на широкий спектр других моделей, что позволит им стать такими же крутыми по качеству, но гораздо более быстрыми и эффективными, чем бессменный король мира нейронных сетей — Трансформер. Эта формула должна избавить от побочных эффектов предыдущих архитектур, пытавшихся стать ему заменой. Но сначала поговорим, зачем всё это вообще нужно.

https://habr.com/ru/companies/vk/articles/971668/

Алгоритмы и Структуры данных
SQL HowTo: генерируем строкочисла (Advent of Code 2025, Day 2: Gift Shop)

В этой челлендж-серии статей, начатой с прошлогоднего эвента, попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2025.

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

https://habr.com/ru/companies/tensor/articles/972304/

Алгоритмы и Структуры данных
«Ты не пройдёшь!»: как мы учили нейросеть искать патологии на КТ, обучая её только на норме. Наш опыт на ЛЦТ-2025

Знаете, как обычно проходят будни исследователя в AI? Сидишь, читаешь статьи, пьёшь восьмую кружку кофе и пытаешься уговорить модель наконец‑то сойтись. А потом кто‑то из коллег кидает в чат ссылку: «Ребята, тут хакатон. „Лидеры цифровой трансформации 2025“. По медицине. Пойдём?».

Ну, а мы что? Мы пошли.

Мы — это три исследователя из группы Foundation Models лаборатории «Сильный ИИ в медицине» Института AIRI. Базируемся в Москве, любим большие модели и сложные задачи. Нам достался, возможно, один из самых интересных треков: «Сервис для выявления компьютерных томографий органов грудной клетки без патологий».

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

Алгоритмы и Структуры данных
Книга: «Разработка алгоритмов. Инженерный подход»

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

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

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

Алгоритмы и Структуры данных
Продолжение статьи: Архитектура торгового Telegram-бота для сигналов пампов и дампов

Я решил ввести два типа сделок, зависящих от 5% и 12% сигналов. При 12% движении мы открываем позиции в контр-тренд, при 5% движении открываем позиции в продолжение тренда. Такие проценты были выведены путём довольно долгой ручной торговле. На монетках средней и маленькой капитализации это действительно рабочая стратегия. Вероятно, она основана на принципах работы ММ.

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

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

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