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

Ссылка: @Portal_v_IT

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

Канал на бирже: https://telega.in/c/structuredata
Download Telegram
Создание интерактивного макета. Задача упаковки кругов в круг. Метод отжига

Я начала разработку интерактивного интерфейса для своего проекта «Florist». Центральным элементом сайта должен был стать интерактивный макет — с его помощью пользователь мог бы визуализировать различные цветочные дизайны, располагая в ячейках макета цветы из каталога. Я создала прототип, внедрила его в сайт и доработала окончательный дизайн до такой картинки:

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

Алгоритмы и Структуры данных
Оцениваем «естественность» изображений по первой цифре

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

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

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

Алгоритмы и Структуры данных
Формула Бине без плавающей точки

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

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

Алгоритмы и Структуры данных
Оптимизация функций компьютерного зрения (библиотека OpenCV) для RISC-V

OpenCV — популярная библиотека, включающая множество алгоритмов компьютерного зрения и функций для них. Оптимизация их под RISC-V — большая и интересная задача, которой в рамках Зимней школы RISC-V YADRO сезона 2024–2025 занимались студенты Университета Лобачевского (ННГУ). В этой статье они подробно расскажут о своей работе.

https://habr.com/ru/companies/yadro/articles/947786/

Алгоритмы и Структуры данных
Реализация алгоритма Укконена на Python

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

https://proglib.io/p/realizaciya-algoritma-ukkonena-na-python-2024-05-20

Алгоритмы и Структуры данных
Как дорожные знаки попадают на карты Яндекса: применяем ML в картографии

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

Меня зовут Владимир Быстрицкий, я работаю в группе AI-картографирования. В этой статье расскажу о процессе детектирования дорожных знаков в картопроизводстве Яндекса: с чего всё началось, как развивалось, какие технологии использовались. Ну и попробую ответить на самый, на мой взгляд, главный вопрос в любой ML-задаче: как собрать датасет и не разориться?

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

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

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

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

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

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

Меня зовут Алексей Гуляев. Я архитектор решений в команде VK Tech. В этой статье я расскажу об онтологии в ИТ, вариантах ее использования и нашем кейсе применения онтологического подхода для решения внутренней задачи.

https://habr.com/ru/companies/vktech/articles/948492/

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

Задача. Описать изменение значения CSS-свойства как функцию от ширины вьюпорта без использования медиа-запросов. Результатом работы миксина должна быть единственная строка вида <свойство>: <функция от ширины вьюпорта >. В качестве входных данных имеются заданные (табулированные) точки (ширина вьюпорта, значение свойства). Поведение CSS-свойства от точки к точке аппроксимируется прямой линией.

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

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

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

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

Алгоритмы и Структуры данных
Сравнение матричной факторизации с трансформерами на наборе данных MovieLens с применением библиотеки pytorch-acceleratd

Современный человек много чем занимается в интернете: ходит по магазинам, слушает музыку, читает новости. Все эти задачи подразумевают поиск и выбор того, что ему нужно. При этом важную роль тут играют рекомендательные системы. Они помогают людям не утонуть в многообразии вариантов и увидеть именно то, что им подойдёт, то, что иначе им сложно было бы найти. Предоставление пользователям качественных рекомендаций — это важнейшая часть обеспечения первоклассного уровня удовлетворения клиента. Это — один из самых эффективных способов взращивания лояльности клиентов и повышения ценности продукта или услуги в их глазах. Всё это так важно, что целые бизнес-модели некоторых компаний построены вокруг предоставления их клиентам наилучших рекомендаций, что делает рекомендательные системы важнейшими факторами, влияющими на прибыль подобных компаний! В результате неудивительно то, что клиенты проекта Microsoft CSE часто обращаются к нам с просьбами, касающимися реализации эталонных рекомендательных техник. Один из таких проектов был моим первым опытом в данной сфере.

https://habr.com/ru/companies/wunderfund/articles/645921/

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

Когда виртуальная машина Java компилирует ваш исходный код Java в машинный, одна из задач, которые она должна при этом выполнить – решить, где хранить локальные переменные Java и другие подобные временные значения. В вашей машине отсутствует концепция локальных переменных, поэтому на этапе компиляции необходимо определиться, какое место в памяти стека (какой машинный регистр) будет использоваться для хранения каждой переменной. Эта операция называется «выделение регистров». Может показаться, что выделение регистров – сложная абстрактная теоретическая тема, но в этом коротком посте я покажу, как сначала соотнести исходный код Java с теорией, потом понять, как его видит компилятор, а потом – показать результирующий машинный код. В данном случае моя цель – продемонстрировать, что все эти концепции очень легко опробовать на практике с реальным компилятором.

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

Алгоритмы и Структуры данных
👍1
Мой опыт с codewars спустя 3.5 года

Сразу хочу сказать, что в первую очередь задачи я решал для себя. Хочу поделиться моим опытом взаимодействия с этой платформой и насколько мне это помогло. Каждый по прочтению этой статьи решит для себя сам, стоит начинать или же нет. А началось мое знакомство в далеком январе 2022 года. За все время я решил почти 200-ти задач и имею 4kyu. Мне кажется главное, что стоит понять, что сайт делится на две категории - базовый и продвинутый. Большинство задач на 6, 7, 8 kyu - базовые. Всё, что меньше - продвинутый.

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

Алгоритмы и Структуры данных
29 февраля и другие причуды календаря

Считается, что в легендарную эпоху, до того как они образовали свою республику, римляне использовали десятимесячный календарь. Первый месяц назывался месяцем Марса, Mensis Martius, на английском языке известный как март; последний был месяцем № 10, Mensis December. Однако после декабря год ещё не заканчивался: прошло всего 304 дня. Остальные 61 или 62 дня солнечного года проходили в период без месяцев, в промежутке неизмеренного времени, возможно, менее значимом, поскольку это была зима и сельское хозяйство находилось в состоянии покоя.

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

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

Алгоритмы и Структуры данных
Разумная слизь? Тварь, способная решать сложные задачи, что не под силу даже существам, обладающим развитым мозгом

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

Знакомьтесь, Physarum polycephalum – не животное, не растение и даже не гриб. Простейшее одноклеточное амебовидное существо.

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

Алгоритмы и Структуры данных
Проблема, о которой вы наверняка не задумывались: print(.1+.2)

Как следует отображать на экране результат деления 3.0 на 10.0 ? Сколько цифр следует вывести, если пользователь не указал точность?

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

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

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

Алгоритмы и Структуры данных
Прокачиваем RAG: тестируем техники и считаем их эффективность. Часть 2

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

В этой статье мы посмотрим на результаты экспериментов: какие техники оказались наиболее эффективными на датасете Natural Questions, где они приятно удивили, а где — наоборот, не оправдали ожиданий. Для оценки будем использовать фреймворк RAGAS, а также метрики BertScore и ROUGE-2 для анализа релевантности извлечённых чанков и финальных ответов.

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

Алгоритмы и Структуры данных
Лучшие курсы SEO: обучение по продвижению сайтов

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

https://proglib.io/p/luchshie-kursy-seo-obuchenie-po-prodvizheniyu-saytov-2025-01-27

Алгоритмы и Структуры данных
Перцептрон SAAR (Само-рекурсивный ассоциативно адаптивный резервуар)

Аннотация. В работе предлагается новая архитектура искусственного перцептрона — SAAR-Perceptron (Self-Recursive Associative Adaptive Reservoir Perceptron), развивающая классическую модель Розенблатта (S–A–R). Ключевая особенность архитектуры заключается во введении ассоциативного слоя с саморекурсивным отображением (A→A), формирующего динамический граф признаков. В отличие от традиционных рекуррентных моделей, эти связи не обучаются, что обеспечивает устойчивую динамику и выполняет роль адаптивного резервуара, расширяющего пространство признаков.

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

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

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