ru
Feedback
Всё про Алгоритмы и Структуры данных

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

Открыть в Telegram

Мы не претендуем на оригинальность контента, мы лишь собираем материал из открытых источников. Ссылка: @Portal_v_IT Сотрудничество, авторские права: @oleginc, @tatiana_inc Канал на бирже: https://telega.in/c/structuredata

Больше
7 765
Подписчики
Нет данных24 часа
-57 дней
-3730 день
Архив постов
Правда ли, что ICPC работает как социальный лифт в IT-карьере Поэтому, когда мне поставили задачу написать про полуфинал Международной студенческой олимпиады по программированию (ICPC) для региона «Северная Евразия», я решил не пересказывать данные из Википедии. Вы и сами можете их прочитать, а кто-то даже рассказать о собственном опыте участия. Я спросил коллег внутри X5 Tech, как навыки, полученные на соревнованиях по программированию помогли им в реальной жизни: на собеседованиях, в продакшене, в решении сложных системных задач или даже в бытовых ситуациях. Про то, что спортивное программирование развивает алгоритмическое мышление, стрессоустойчивость и умение работать в команде в ограниченное время, пишут много, но теория не всегда переносится на практику. Так как же обстоят дела на самом деле? Какие алгоритмические привычки пятичасовых контестов переходят в инженерную практику? И помогают ли навыки с олимпиад, когда сталкиваешься с реальным сервисом, данными и нагрузками, а не с абстрактными задачами? https://habr.com/ru/companies/X5Tech/articles/976028/ Алгоритмы и Структуры данных

Итерационный бинарный критерий делимости: Деление без деления. Алгоритм для Big Integers и FPGA Операция проверки делимости — одна из фундаментальных в информатике и теории чисел. Для обычных чисел, помещающихся в машинное слово, это одна быстрая аппаратная инструкция. Но для очень больших целых чисел (Big Integers), размер которых превышает разрядность регистра процессора, классическое взятие остатка N \bmod d становится ресурсоёмкой многословной процедурой. Эта статья предлагает чёткую и явную формулировку детерминированного алгоритма для проверки делимости целого числа N на нечётный делитель d, родственного бинарному алгоритму Евклида. Его ключевая особенность: он использует исключительно операции сложения (X + d) и деления на 2 (побитового сдвига вправо, X \gg 1), что позволяет полностью избежать дорогой операции взятия остатка в его явном виде. https://habr.com/ru/articles/975814/ Алгоритмы и Структуры данных

Измерение сложности модели — Часть 3: Представляем Complexity Analyzer В предыдущей статье мы разобрались, как измерять сложность моделей. В этой статье мы покажем, как инструмент FlowComplexity помогает превратить теорию в практику. https://habr.com/ru/articles/975784/ Алгоритмы и Структуры данных

Два режима SPEC: разгоняемся на Peak, притормаживаем на Base Все мы любим быстрые программы и высокие показатели в бенчмарках. Когда гоняешь тесты производительности, так и тянет включить все оптимизации компилятора, чтобы выжать максимум. Но если вы имели дело с пакетами тестов SPEC (например, SPEC CPU), то, вероятно, замечали, результаты там делятся на две категории Base и Peak. В тестах SPEC CPU есть концепция базового прогона (base run) и пикового (peak run). Это строго определенные режимы с разными правилами оптимизации. Base про честность и сопоставимость, Peak про максимальную производительность любой ценой (ну, почти любой). https://habr.com/ru/companies/otus/articles/971100/ Алгоритмы и Структуры данных

Техрепорт Alice AI: как мы создавали новое поколение моделей для самого популярного ИИ-ассистента в России Сегодня мы делимся техрепортом, в котором разобран полный цикл создания нового семейства моделей Alice AI: базовая текстовая Alice AI LLM и специализированная LLM Search, мультимодальная Alice AI VLM и картиночная Alice AI ART. В части про Alice AI LLM расскажем, как сделали упор в Alignment на RL и Reward Modeling: мы минимизируем число разрозненных RL-стадий, собирая «общий RL». Вместо хрупкого «суперсигнала» используем аспектную формулировку качества и агрегируем её в целевую функцию, чтобы изменения критериев не требовали пересборки всей разметки. В главе про Alice AI LLM Search расскажем про многократные последовательные походы в Поиск с последующей фильтрацией/ранжированием источников. А также о том, как готовим ответы с использованием документов разной модальности (веб-документы, картинки, видео, гео). https://habr.com/ru/companies/yandex/articles/974594/ Алгоритмы и Структуры данных

Попробуйте IT на вкус: изучите 6 профессий за 4 дня Бесплатный курс по IT от практика, который нанимает IT-специалистов кажды
Попробуйте IT на вкус: изучите 6 профессий за 4 дня Бесплатный курс по IT от практика, который нанимает IT-специалистов каждый день Под его руководством вы создадите сайт, напишете первый код, найдёте баги, попробуете себя в Data Science, разберётесь, что делают специалисты по кибербезопасности, и поймёте, к чему именно у вас есть склонность. Это не «послушать лекцию». Это опыт, который экономит месяцы! Такую возможность нельзя упустить, потому что именно в этом курсе спикер знает кого реально нанимают сегодня, а кого нет. Регистрируйтесь по ссылке и получайте навыки, за которые рынок платит от 160 000 тыс.руб.

Техрепорт Alice AI: как мы создавали новое поколение моделей для самого популярного ИИ-ассистента в России Сегодня мы делимся техрепортом, в котором разобран полный цикл создания нового семейства моделей Alice AI: базовая текстовая Alice AI LLM и специализированная LLM Search, мультимодальная Alice AI VLM и картиночная Alice AI ART. В части про Alice AI LLM расскажем, как сделали упор в Alignment на RL и Reward Modeling: мы минимизируем число разрозненных RL-стадий, собирая «общий RL». Вместо хрупкого «суперсигнала» используем аспектную формулировку качества и агрегируем её в целевую функцию, чтобы изменения критериев не требовали пересборки всей разметки. В главе про Alice AI LLM Search расскажем про многократные последовательные походы в Поиск с последующей фильтрацией/ранжированием источников. А также о том, как готовим ответы с использованием документов разной модальности (веб-документы, картинки, видео, гео). https://habr.com/ru/companies/yandex/articles/974594/ Алгоритмы и Структуры данных

Моя любимая маленькая хеш-таблица Я из тех, кто всерьёз задумывается о проектировании и реализации хеш-таблиц. Недавно обнаружился донельзя милый вариант, который заслуживает широкой огласки. Это робин-гудовская открытая адресация с применением линейного зондирования, где размер самой таблицы увеличивается как степень двойки. Если вы не знакомы с терминологией хеш-таблиц, то все эти слова могут показаться вам каким-то невразумительным салатиком, но, когда мы разберём этот п��имер с привлечением кода — всё должно стать понятнее. https://habr.com/ru/articles/975636/ Алгоритмы и Структуры данных

Из мёртвой зоны — в зелёную: как мы запускали техподдержку для системы утилизации токсичных отходов С 1 марта 2022 года тысячи российских компаний — от промышленных гигантов до сельских школ — в один день перешли на новую систему по обращению с отходами I и II классов опасности, которая стала частью управляемого процесса обращения с отходами в стране. Простыми словами, это самые вредные отходы: отслужившие ртутные лампы, батарейки, аккумуляторы, промышленные химикаты. Для многих это стало шоком: привычные процессы рушились, вызывая панику и раздражение. Весь этот шквал эмоций и вопросов обрушился на нас — команду техподдержки. Раньше оборот таких отходов был серой зоной: кто-то пытался соблюдать правила, а кто-то просто сливал их в овраг. Новая система была создана по заказу Минприроды и призвана сделать этот процесс прозрачным и контролируемым. https://habr.com/ru/companies/greenatom/articles/975314/ Алгоритмы и Структуры данных

Решение головоломки NYTimes Pips с помощью решателя ограничений Недавно The New York Times запустила новую ежедневную головоломку под названием Pips. Суть в том, что нужно разложить набор костяшек домино на сетке так, чтобы выполнялись различные условия. Например, в головоломке ниже сумма очков (точек на костях домино) в фиолетовых клетках должна быть равна 8, в красной клетке должно быть меньше 5 очков, а в трёх зелёных клетках значения должны быть одинаковыми. (Чтобы решить эту «лёгкую» головоломку, много думать не нужно, а вот варианты «medium» и «hard» уже заметно сложнее.) https://habr.com/ru/companies/otus/articles/975004/ Алгоритмы и Структуры данных

📱 Как GPT меняет бизнес? Узнай изнутри. На канале Owner 1win — опыт основателя топового проекта, который использует нейросети, ИИ и собственные IT-разработки, чтобы масштабировать 1win и выходить за рамки индустрии. Здесь ты найдешь: 👉 Как GPT помогает автоматизировать процессы 👉 Инсайды о внедрении ИИ в гемблинг 👉 Личный опыт создания digital-платформ 👉 Апдейты и кейсы по 1win и другим проектам 🔗 Owner 1win — про технологии, которые работают. Подпишись и будь в курсе, как ИИ делает бизнес умнее.

Два притопа, три прихлопа Подготавливая статью [1] к публикации, обратил внимание на картинку, показанную на рис. 1. Я сохранил ее, чтобы воспользоваться в будущем. И оно не заставило себя ждать, т.к. захотелось повысить наглядность решения, введя в него графику и используя именно эту картинку. К чему это привело, далее мы и поговорим. Все, что связано с картинкой, сделать не так уж сложно. Это довольно подробно описано в цикле статей по реализации графики в ВКПа (см. [2]). Для этого, во-первых, нужно создать графическое окно, установив данную картинку в качестве фона. Во-вторых, воспользоваться существующими заготовками контролов (элементов графического интерфейса), которые необходимо будет разместить на данном фоне. https://habr.com/ru/articles/975032/ Алгоритмы и Структуры данных

Измерение сложности моделей — Часть 2: Применяем теорию на практике В предыдущей статье мы заложили фундамент для анализатора сложности, определив ключевые метрики для оценки сложности моделей процессов. Теперь разберем, как превратить эту теорию в реально работающий инструмент. От метрик к уровням сложности Задача — автоматически разделить модели на три категории: низкая, средняя и высокая сложность. Классический кейс для алгоритмов кластеризации (обучение без учителя). Идея простая: модели с похожими значениями метрик сами собой группируются в кластеры. Простые модели обычно имеют низкие NOAJS и CFC, а сложные — высокие значения этих метрик из-за обилия шлюзов. Для решения выбрали алгоритм K-Means — он отлично подходит для такого сценария. https://habr.com/ru/articles/973666/ Алгоритмы и Структуры данных

🎬 Хотите, чтобы ваши идеи стали историей, о которой говорят? Все мы придумывали сюжеты в голове: героев, диалоги, целые филь
🎬 Хотите, чтобы ваши идеи стали историей, о которой говорят? Все мы придумывали сюжеты в голове: героев, диалоги, целые фильмы… Разница только в том, что одни оставляют это фантазией, а другие делают карьеру на сценариях. Специально для вас открыт бесплатный мини-курс, где идеи превращаются в истории. Что будет на курсе: — Напишете свой первый сценарий всего за 4 занятия — Пообщаетесь вживую с опытным сценаристом — Получите 5 чек-листов и подборку материалов в подарок — Вступите в закрытое комьюнити сценаристов в Telegram 💰Зарплата начинающего сценариста — от 80 000 ₽, с опытом — до 135 000 ₽. А первый шаг вы делаете бесплатно (вместо 2 990 ₽). Пройдите короткий тест, откройте доступ и начните писать историю. Одна из таких историй привела студента Skillbox к Netflix и HBO. Может, это и ваш путь!

Два притопа, три прихлопа Подготавливая статью [1] к публикации, обратил внимание на картинку, показанную на рис. 1. Я сохранил ее, чтобы воспользоваться в будущем. И оно не заставило себя ждать, т.к. захотелось повысить наглядность решения, введя в него графику и используя именно эту картинку. К чему это привело, далее мы и поговорим. Все, что связано с картинкой, сделать не так уж сложно. Это довольно подробно описано в цикле статей по реализации графики в ВКПа (см. [2]). Для этого, во-первых, нужно создать графическое окно, установив данную картинку в качестве фона. Во-вторых, воспользоваться существующими заготовками контролов (элементов графического интерфейса), которые необходимо будет разместить на данном фоне. https://habr.com/ru/articles/975032/ Алгоритмы и Структуры данных

SFINAE в C++ Сегодня я хочу поговорить про SFINAE, загадочную аббревиатуру из C++. Расшифровывается SFINAE не менее загадочно: Substitution Failure Is Not An Error, по-русски: «неудавшаяся подстановка — не ошибка». Сейчас рассмотрим, почему это правило появилось, как оно работает и как мы можем использовать его себе во благо. https://habr.com/ru/companies/otus/articles/971354/ Алгоритмы и Структуры данных

«Квантовая фотография: как аналоговая эмульсия вычисляет волновую функцию» В настоящей статье предлагается рассмотрение классического процесса аналоговой фотографии не как художественной или технической дисциплины, а как физической реализации квантового измерения и вычисления. Мы устанавливаем структурный изоморфизм между этапами формирования серебряно-желатинового отпечатка и фундаментальными постулатами квантовой механики. Сценарное освещение трактуется как начальное квантовое состояние, оптико-механическая система камеры — как оператор наблюдения, а фотохимическая эмульсия — как среда, осуществляющая необратимую декогеренцию и усиление. Ключевые квантовые концепции — волновая функция, коммутационные соотношения, матрица плотности, вероятность перехода — получают прямые операциональные аналоги в фотографических параметрах: выдержке, диафрагме, статистике зерна, характеристической кривой и химических константах проявления. https://habr.com/ru/articles/974948/ Алгоритмы и Структуры данных

Оценка сложности модели — Часть 1: Почему проще обычно лучше В мире оркестрации процессов постоянно всплывает один и тот же вопрос: а не слишком ли сложные модели мы создаем? Вопрос важный, потому что избыточно сложные модели приносят целый букет проблем: их труднее понимать, поддерживать и изменять — а это напрямую бьет по срокам и результатам проектов. Современные движки рабочих процессов (например, Flowable) легко переваривают даже очень сложные модели, но это не значит, что нужно пользоваться этой возможностью на полную. Упрощение дает ощутимые плюсы: модели становятся более читаемыми, требуют меньше усилий на сопровождение и лучше подходят для совместной работы. В итоге простая модель — это ценный актив для любой компании. Поэтому главная цель — находить баланс между функциональностью и простотой, чтобы модель оставалась эффективной и удобной в долгосрочной перспективе. https://habr.com/ru/articles/973642/ Алгоритмы и Структуры данных

Изоляция рунета ближе, чем ты думаешь Loading … ██████████████] 99% Роскомнадзору дали карт-бланш на блокировки, а «белые спи
Изоляция рунета ближе, чем ты думаешь
Loading ██████████████] 99%
Роскомнадзору дали карт-бланш на блокировки, а «белые списки» сайтов тестируют уже в десятках регионов. И гайки будут закручиваться только сильнее. Чтобы в одночасье не лишиться доступа к свободному Интернету, просто сохрани Only Hack. Тут профессиональный хакер делится фишками, с которыми доступ к глобальной сети у тебя будет даже в случае ядерного апокалипсиса. Не жди момента «Х». Перестрахуйся подпиской.

«Квантовая фотография: как аналоговая эмульсия вычисляет волновую функцию» В настоящей статье предлагается рассмотрение классического процесса аналоговой фотографии не как художественной или технической дисциплины, а как физической реализации квантового измерения и вычисления. Мы устанавливаем структурный изоморфизм между этапами формирования серебряно-желатинового отпечатка и фундаментальными постулатами квантовой механики. https://habr.com/ru/articles/974948/ Алгоритмы и Структуры данных