Data Science: Алгоритмы и Структуры данных
Open in Telegram
Мы не претендуем на оригинальность контента, мы лишь собираем материал из открытых источников. Ссылка: @Portal_v_IT Сотрудничество: @oleginc Канал на бирже: https://telega.in/c/structuredata
Show more7 616
Subscribers
-424 hours
-137 days
-4730 days
Posts Archive
Время дорого стоит
У Контура более 10 тыс сотрудников и очень-очень много групповых встреч: около 30 тыс ежемесячно, мы считали. 👀 И бывает так, что нужно собрать сразу нескольких ребят в наиболее удобное для всех время. И начинается вот это вот: зайти на страницу человечка > посмотреть, какое время у него свободно > сопоставить со своим > проверить, а могут ли в это время остальные участники > обнаружить, что нет, и идти заново по кругу смотреть другие слоты, забывая, чё там у кого. 🙄 Да блин!
Мы решили остановить эту котовасию ✋🚫 и добавить в наш внутренний портал (в Контуре используется Стафф) рекомендацию свободных слотов для всех участников встречи. Рассказываем и показываем, как реализовали это.
https://habr.com/ru/companies/skbkontur/articles/965280/
Алгоритмы и Структуры данных
Совет на всю жизнь — начните изучать арендный бизнес.
Недвижимость стала самой крепкой валютой мира. А в такие турбулентные времена с жилой недвижимостью предпринимателям лучше всего начать вкладывать свой капитал в коммерческую недвижимость.
🛒 Красное и Белое, 🛒 Fix Price, 🛒 Пятёрочка и 🛒 Аптеки Апрель суммарно открывают 28 магазинов в день — сейчас уникальное время, когда рынку постоянно требуются новые помещения и умные девелоперы.
Чтобы не упустить возможности, читайте канал Готовый Арендный Бизнес. Внутри: как подобрать доходную недвижимость, где найти надежного арендатора и как на открытии каждого магазина можно заработать минимум 1 000 000 руб. (Примеры)
Пока не прочитали этот блог, не связывайтесь с недвижимостью: @dima_nedviga
Нечёткий поиск при пересечении множеств, или Как выжать все соки из Хэширования по сигнатуре
На просторах интернета легко можно найти материалы по реализации нечёткого поиска, в которых предполагается поиск одной строки в множестве строк M. Но что если возникнет необходимость реализовать нечёткое сравнение множества M₁ с множеством M₂? При классическом подходе нам придется выполнить M₁*M₂ сравнений - при линейном росте этих множеств, сложность задачи будет расти экспоненциально, в плане производительности это решение никуда не годиться!
Предложенное ниже решение для БД SQL реализовано с помощью хэширования строк по сигнатуре. Оно максимально эффективно выполняет данный поиск в пределах одной ошибки (по расстоянию Левенштейна), но его можно адаптировать и под поиск в пределах какого угодно количества ошибок, но увеличение допуска экспоненциально усложняет алгоритм.
https://habr.com/ru/articles/965934/
Алгоритмы и Структуры данных
Главная проблема «чистых архитектур»
Откройтелюбой пулл‑реквест в проекте с любой «чистой архитектурой», и вы скорее всего увидите не обсуждение бизнес‑логики, а срач. «Это нельзя класть в UseCase, это логика домена!», «Зачем тут еще один DTO, мы же просто поле прокидываем!», «Этот интерфейс не нужен, у нас никогда не будет другой реализации!». Полагаю, с очень многими такое случалось.
Это и есть главная проблема. «Чистая архитектура» — это не инженерная дисциплина. Это множество концепций, который каждый понимает по своему. И это касается не только чистой архитектуры, которую описывает «о великий Роберт Мартин». Это касается вообще всех архитектур. Из‑за отсутствия конкретных ответов каждая команда превращается в парламент, где все спорят, но никто ничего не может решить. Архитектура из инструмента для разработки превращается в причину, по которой разработка стоит на месте, а страдают все.
https://habr.com/ru/articles/965812/
Алгоритмы и Структуры данных
Серверы VALORANT с тикрейтом 128
Привет! Меня зовут Brent «Brentmeister» Randall (Брент Рэндалл). Я — инженер из команды Gameplay Integrity, которая занимается игрой VALORANT. В сферу нашей ответственности входит система сборки игры, фреймворки, используемые для автоматизации различных задач, производительность игрового клиента и серверов. Именно последнему пункту этого списка и посвящена данная статья. Я поделюсь с вами историей поиска подходов, позволивших вывести производительность наших серверов на оптимальный уровень.
https://habr.com/ru/companies/wunderfund/articles/964694/
Алгоритмы и Структуры данных
Айтишники, это вам — в телеграм есть комьюнити по каждому направлению в IT
Там есть буквально всё: чаты для общения, тонны материала(книги, курсы, ресурсы и гайды), свежие новости и конечно же мемы
Выбирайте своё направление:
💩 Frontend 🐍 Python
🐧 Linux 👩💻 С/С++
👩💻 C# 🤔 Хакинг & ИБ
📱 GitHub 🖥 SQL
👩💻 Сисадмин 🤟 DevOps
⚙️ Backend 🖥 Data Science
🧑💻 Java 🐞 Тестирование
🖥 PM / PdM 👩💻 GameDev
🧑💻 Golang 🤵♂️ IT-Митапы
🧑💻 PHP 💻 WebDev
🖥 Моб. Dev 🖥Анали.(SA&BA)
👩💻 Дизайн 🖥 Нейросети
💛 1C 🤓 Книги IT
➡️ Сохраняйте в закладки
Как работает навигация между городами без интернета
2ГИС с самой первой версии навигатора умеет строить разные виды маршрутов — автомобильные, пешеходные, маршруты на общественном транспорте — на мобильных устройствах без доступа к интернету, но только внутри городов.
С 2019 года 2ГИС также умеет строить маршруты между городами, но только при наличии интернета.
Уже давно наши пользователи просили дать возможность строить междугородние маршруты без доступа к сети. И вот, мы наконец сделали это.
https://habr.com/ru/companies/2gis/articles/959712/
Алгоритмы и Структуры данных
Я продал 1 рубль за 97 копеек
Дурак? Возможно.
Но потом завел его на биржу, перевел в USDT и перепродал его уже 1.63 рубля. Провернул ту же схему с 10 тысячами – и заработал 6300р за день.
Именно так выглядит арбитраж – сфера где даже мамы в декрете и студенты за 5-7 дней получают чью-то месячную зарплату.
И ничего сложного нет – на канале Арбитраж криптовалют она расписана во всей красе.
Автор показывает, как заработать на новую квартиру или машину, тратя 3 часа в день и просто сидя в телефоне.
Арбитраж крипты сейчас – как нефть в 2008 году. Так что пробуйте, не пожалеете: @arbitrage
Поведенческие шаблоны проектирования: назначение, структура, примеры использования
Как создавать приложения, которые легко поддерживать и масштабировать: подробный разбор поведенческих шаблонов.
https://proglib.io/p/povedencheskie-shablony-proektirovaniya-naznachenie-struktura-primery-ispolzovaniya-2022-02-22
Алгоритмы и Структуры данных
Решаем криптарифмы с помощью алгебры и python
Если вы увлекались математикой в возрасте до 12 лет, то, наверное, встречались с криптарифмами - числовыми ребусами.
Числовым ребусом называется корректное арифметическое выражение (обычно - равенство), часть цифр в котором заменена на буквы и звездочки. Правила просты: одинаковые буквы заменяются на одинаковые цифры, разные - на разные.
Задача - восстановить исходные цифры, получив верное равенство.
Числовые ребусы хороши для тренировки у младшеклассников навыков логического мышления и счета в столбик. Однако и взрослым программистам может быть интересно поискать ответ на общий вопрос - а как, всё таки, алгоритмизировать процесс решения ребуса?
https://habr.com/ru/articles/733642/
Алгоритмы и Структуры данных
Арбитраж ставок финансирования — создаём скрипт для отслеживания возможностей
На крипто рынке у бессрочных фьючерсов существует специальный механизм: ставка финансирования (funding rate) - периодический платёж между держателями длинных (long) и коротких (short) позиций, который служит для выравнивания цены фьючерса с ценой спота.
Арбитраж по ставке финансирования - стратегия, цель которой не столько угадать движение цены, сколько извлечь выгоду из разницы в ставках финансирования на разных площадках или между контрактом и спотом.
Например: если фьючерс на актив торгуется с положительной ставкой +0.03 % за период, то держатели short получают оплату от long. Арбитражер может занять длинную позицию на споте и короткую на фьючерсе, тем самым оставаясь почти нейтральным к движению цены, и получать платёж по ставке. Или - если ставка отрицательная (short платят long) - можно действовать наоборот: short спот и long фьючерс.
https://habr.com/ru/articles/965072/
Алгоритмы и Структуры данных
Научитесь Python разработке за 0₽
Зарплата начинающего Python разработчика от 60 000₽, а стоимость обучения на профессию в онлайн-школах от 120 000 до 300 000 рублей.
Прямо сейчас Skillbox проводит бесплатно мини-курс по программированию на Python.
Переходите по ссылке и обучитесь основам Python за 5 дней. Акция продлится до 30 ноября: https://go.redav.online/e16edf6ecd17e5e0?erid=2VfnxyFWM3N&m=1
Алготрейдинг на крипторынке: Реализация стратегии «Bomberman» как самостоятельного Python-бота
. Вдохновившись недавней статьей на Veles Finance "«Bomberman»: стратегия для крипторынка с индикаторами BOP, Mean Reversion и Дончиана", я решил воплотить эту идею в жизнь. Не просто в теории, а в коде: создал полноценного алгобота на Python, который автоматизирует торговлю, тестирует параметры и визуализирует результаты.
Этот бот прозрачен: использует открытые данные с binance, классические индикаторы технического анализа и строгий walk-forward бэктест, чтобы избежать look-ahead bias (смещения в будущее).
В статье разберем логику стратегии, архитектуру бота, ключевые функции и реальные результаты на исторических данных BTC/USDT. Если вы программист с интересом к финансам или трейдер, жаждущий автоматизации, — добро пожаловать. Мы пройдемся по коду, формулам и рискам.
https://habr.com/ru/articles/964672/
Алгоритмы и Структуры данных
Кодирование с помощью параметризации нечётных чисел
Рассмотрим стандартную 8-битную кодировку (например, ASCII+). Но с одним условием, мы хотим передавать сообщения так, чтобы только адресат мог их расшифровать — без применения традиционных криптографических примитивов, таких как AES или RSA. Есть ли альтернатива? Оказывается, да — можно построить биективное отображение между символами и определённым подмножеством нечётных натуральных чисел, генерируемых по заданному правилу.
https://habr.com/ru/articles/964666/
Алгоритмы и Структуры данных
Два универсальных SIMD алгоритма
Большинство SIMD инструкций узконаправленны, например применяют бинарную операцию параллельно для нескольких чисел, упакованных в длинный регистр. Применение таких операций прямолинейно и в большинстве случаев компилятор сам оптимизирует код с использованием таких инструкций. Например компилятор легко соптимизирует таким образом проверку несложного предиката на массиве или например суммирование элементов массива. Есть однако и более универсальные инструкции, в частности довольно много всякого рода манипуляций с битами внутри регистра. В этой статье хочу рассказать о двух таких инструкциях: уже давно присутствующей PSHUFB и довольно новой GF2P8AFFINEQB, расскажу как с их помощью делать побайтовую обработку общего вида и приведу пару примеров с известными операциями такими как popcount, подсчет четности, разворот битов числа.
https://habr.com/ru/articles/964608/
Алгоритмы и Структуры данных
Рейтинг контента и пользователей на основе офелократии. Часть 2. Реализация на SQL
В первой части мы обсудили философские основы рейтинговой системы и основные принципы её работы. Теперь перейдём к техническим деталям реализации на MySQL.
https://habr.com/ru/companies/ruvds/articles/964162/
Алгоритмы и Структуры данных
Что не так с ИИ-«искусством»
Не знаю, как у вас, но когда я натыкаюсь на заполонившие интернет изображения и видео, которые были созданы ИИ, у меня возникает очень странное чувство. Это своего рода инстинктивное ощущение, что с этими изображениями что‑то не так.
Часть меня скептически относится к этой инстинктивной реакции: не попадаю ли я в ловушку, в которую попадали бесчисленные поколения до меня? Может быть, я, как могли бы предположить сторонники ИИ, просто рефлекторно отвергаю следующий логический шаг в технологическом прогрессе, потому что он несёт с собой некомфортные для меня перемены? Может быть, я просто повторяю за Платоном, когда он критиковал развитие письменности, утверждая, что это приведет к потере памяти у людей?
Или это инстинктивное чувство, что что‑то «не так» с «искусством», созданным ИИ, указывает на нечто более глубокое и истинное? Не сообщает ли оно нам что‑то важное о том, что такое искусство для нас, для людей? О том, что, каким бы ни было искусство, попытка создать его с помощью ИИ — это своего рода насилие?
https://habr.com/ru/articles/964418/
Алгоритмы и Структуры данных
Параметризация нечётных чисел на основе подмножеств вычетов по модулю шесть
Известно, что подмножество вычетов по модулю числа представляет собой набор целых чисел, полученных при делении на заданный модуль [Subspace Sum Graphs over Residue Class Rings, J. Sangwisat, S. Sirisuk, 2014, Lobachevskii journal of mathematics]. Вычет по модулю m – это остаток от деления целого числа на m. Множество всех возможных вычетов по модулю m называется полной системой вычетов и обозначается как Z/mZ или {0, 1, …, m-1} [An efficient algorithm deciding chaos for linear cellular automata over ( Z / m Z ) n with applications to data encryption, A. Dennunzio, E. Formenti, L.Margara, 2024, Information Sciences]. Подмножество вычетов по модулю m – это любой набор элементов из этого множества.
Предлагается рассмотреть параметризацию всех натуральных нечетных чисел на основе приведенной системы вычетов {1, 3, 5}, которая взаимно проста с модулем 6. Показан способ описания подмножеств вычетов {1, 3, 5}, который за счет разбиения на подмножества, подпространства, уровни масштабирования и индексации внутри уровней, позволяет исчерпывающе покрыть все нечетные числа и доказывает их фрактальную структурную детерминированность.
https://habr.com/ru/articles/964400/
Алгоритмы и Структуры данных
В процессе обучения нейронных сетей получаются красивые фракталы
Как-то раз моя пятилетняя дочка, вернувшись домой из детского садика, сообщила мне и моей жене, что математика — тупая штука (!). С тех пор мы не покладая рук работаем (пока что успешно), стараясь увлечь её всевозможными математическими интересностями, а теперь ещё и гордимся её успехами в математике. Одна из наших наиболее удачных находок привела к тому, что теперь дочь очень интересуется фракталами вообще. Особенно ей нравится смотреть видеоролики, где с увеличением показаны множества и оболочки Мандельброта, а вдобавок есть капусту романеско. Благодаря этому увлечению дочери, я стал больше задумываться о фракталах, а также о том, как они соотносятся с особенно волнующей меня темой — искусственными нейронными сетями.
https://habr.com/ru/articles/964394/
Алгоритмы и Структуры данных
Кэширование и всё, что с ним связано
Сегодня хочу рассказать об одной технологии, которая сопровождает нас буквально везде. От процессора в вашем смартфоне до глобальных сервисов вроде YouTube. Речь пойдет о кэшировании.
Да, я знаю, тема кажется избитой. Но когда я впервые осознала, что одни и те же принципы работают на всех уровнях, от крошечного L1-кэша до распределенного Redis-кластера — это было похоже на инженерное просветление. Предлагаю и вам пройти этот путь вместе со мной.
https://habr.com/ru/companies/timeweb/articles/959676/
Алгоритмы и Структуры данных
