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

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

الذهاب إلى القناة على Telegram

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

إظهار المزيد
7 766
المشتركون
لا توجد بيانات24 ساعات
-57 أيام
-3630 أيام
أرشيف المشاركات
Научитесь Python разработке за 0₽ Зарплата начинающего Python разработчика от 60 000₽, а стоимость обучения на профессию в он
Научитесь 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/ Алгоритмы и Структуры данных

ИИ-ученые 2025: SR-Scientist, DeepEvolve и Kosmos — чем отличаются и зачем. И почему выстрелил Kosmos В 2025-м на наших глазах складывается новый класс инструментов - ИИ-Ученые (AI-Scientist). Если раньше алгоритмы ИИ могли только генерировать идеи или перерабатывать уже известные решения, то современные системы умеют не просто придумывать гипотезы, но и реализовывать их на практике, тестировать и совершенствовать из раза в раз. Речь не просто про чат-боты и Co-Pilot’ы, речь про агентные системы, которые сами ставят гипотезы, пишут и исполняют код, проверяют результаты и накапливают опыт. https://habr.com/ru/articles/964254/ Алгоритмы и Структуры данных

Как решать LeetCode? Легко! Нужно просто… Просто знать 15 важных паттернов, которые помогут облегчить тернистый путь в решении алгоритмических задач. Про эти паттерны мы и расскажем в этой статье. https://habr.com/ru/articles/964104/ Алгоритмы и Структуры данных

Эволюция радиомашинок в среде Unity с помощью NGspice В этой статье я расскажу про свой эксперимент: я создал в Unity симуляцию радиоуправляемых машинок, которые эволюционируют. «Мозгом» каждой машинки является электронная схема. Я заставил эти схемы мутировать(случайно меняться) и скрещиваться(обмениваться частями), чтобы создавать новые модели машин и улучшать их. Их «интеллект» и поведение меняются в зависимости от того, сколько блоков они успешно поднимают. Старт симуляции: Мутация: У машинки меняется "ДНК" (её электронная схема) Скрещивание: Эта машинка объединяет свои "гены" с другой, и рождается новая. Принцип такой: «мозг» машинки (её радиосхема) учится методом проб и ошибок. Каждый раз, когда она успешно поднимает блок, она получает положительный сигнал (подкрепление), который заставляет её повторять удачные действия в будущем. Основная задача заключалась в организации непрерывного обмена данными между Unity и NGspice. https://habr.com/ru/articles/963624/ Алгоритмы и Структуры данных

Метод генерации столбцов для решения задач математической оптимизации большой размерности Недавно на хабре мне понравилась статья "Математическая оптимизация и моделирование в PuLP: задача о назначениях" , где автор и, как я потом узнал, мой знакомый решил сделать серию статей о математической оптимизации, с целью популяризовать это направление и максимально доступно ознакомить читателей с инструментами, позволяющими решать такой класс задач, и научить пользователя видеть такие задачи в реальном мире, чтобы понимать, где может оказаться полезен этот инструмент. Так, в своей статье автор описывает решение задачи назначения ресурсов на потенциальные работы с помощью верхнеуровневой питоновской оболочки pulp с подключением солвера cbc для решения самой задачи смешанного целочисленного программирования. https://habr.com/ru/articles/733804/ Алгоритмы и Структуры данных

Пользуетесь Google Docs, таблицами или Gmail каждый день, но но тратите часы на рутинные задачи? AI внутри экосистемы Google
Пользуетесь Google Docs, таблицами или Gmail каждый день, но но тратите часы на рутинные задачи? AI внутри экосистемы Google уже умеет писать, считать и планировать быстрее человека. В прямом эфире СЕО университета Зерокодер расскажет, как использовать привычные инструменты Google на полную! ⚡️Что ждет вас на вебинаре? – Какие инструменты входят в экосистему Google; – Как автоматизировать ежедневные процессы в гугл-таблицах и документах; – Как использовать Gemini, NotebookLM и Veo 3 для создания полного цикл контента — от текстов до видеопрезентаций; – Как получить доступ к инструментам бесплатно или со скидкой. 👉 Регистрируйтесь прямо сейчас Все участники получат готовые гайды для работы с экосистемой Google. Эфир подойдет всем, кто хочет сэкономить рабочее время, монетизировать навыки и оставаться в тренде технологий 2025 года. PS: Это первый в РФ полноценный практикум от экспертов по AI-экосистеме Google. Узнайте и погрузитесь в революционные изменения AI сферы по ссылке.

Алгоритмы поиска подстроки на JavaScript Недавно я столкнулся с одной не очень сложной задачей на leetcode. В рамках задачи нужно было реализовать алгоритм поиска подстроки в строке. Пока я пытался сделать задачу, я понял, что я очень мало знаю про то как можно искать подстроку и решил изучить эту тему подробнее, и рассказать результат вам. Как говорит Википедия “Поиск подстроки в строке — одна из простейших задач поиска информации”, но это не совсем так, ниже я расскажу про разные алгоритмы решения и покажу примеры их реализации. Начнем! https://habr.com/ru/articles/733998/ Алгоритмы и Структуры данных

Кому нужен Graphviz, если можно написать его самому? Недавно мы переделали наши внутренние инструменты, визуализирующие компиляцию JavaScript и WebAssembly. При работе оптимизирующего компилятора Ion мы теперь можем генерировать интерактивные графы, демонстрирующие, как конкретно обрабатываются и оптимизируются функции. Вы можете сами поэкспериментировать с этими графами в оригинале статьи. Просто введите какой-нибудь код на JavaScript в функцию test, и наблюдайте за созданием графа. Также там можно щёлкать и перетаскивать граф, менять масштаб при помощи колеса мыши с зажатым Ctrl и перетаскивать ползунок вниз, чтобы изучить процесс оптимизации. В процессе экспериментов обратите внимание на то, насколько стабильна схема графа даже при изменении размеров блоков и добавлении новых структур. Попробуйте нажать на заголовок блока, чтобы выделить его, а затем перетащить ползунок, и наблюдайте за тем, как меняется граф, а блок остаётся на месте. Или нажмите на номер команды, чтобы подсветить её и следить за ней между проходами. https://habr.com/ru/articles/962436/ Алгоритмы и Структуры данных

Детальный разбор стандарта NIST SP 800-232 со схемами преобразований. Часть 1 Совсем недавно – в августе текущего года – Институт стандартов и технологий США NIST выпустил стандарт NIST SP 800-232 [1], описывающий четыре низкоресурсных криптографических алгоритма на базе семейства алгоритмов Ascon: алгоритм аутентифицированного шифрования с присоединенными данными Ascon-AEAD128; три алгоритма хеширования: Ascon-Hash256 (классическая хеш-функция), Ascon-XOF128 (хеш-функция с переменным размером выходного значения) и Ascon-CXOF128 (хеш-функция с кастомизацией и переменным размером выходного значения). Предыдущий опыт показывает, что криптографические стандарты США после их принятия обычно широко используются во всем мире, поэтому данный документ может представлять значительный интерес и достоин детального разбора (краткий обзор стандарта NIST SP 800-232 уже был опубликован на Хабре ранее здесь), который я и предлагаю вам в двух частях в этой (и следующей) статье. https://habr.com/ru/companies/aktiv-company/articles/962134/ Алгоритмы и Структуры данных

Решаем криптографическую задачу: Из России с любовью Ранее в блоге FirstVDS уже была статья с разбором решения криптографической задачи с MysteryTwister. В этом топике разберём задачу с довольно многозначительным названием «Из России с любовью» ("From Russia with Love"). Автор задачи Sansibar. Задание достаточно простое, и основано на шифре простой замены (подстановки), а конкретно на шифре с использованием кодового слова (при таком образовании шифралфавита ключевое слово пишется сначала, затем пишутся остальные буквы алфавита по порядку кроме букв, использованных в ключе). Есть две основные проблемы стойкости шифров замены: простота формирования шифралфавита и чувствительность к частотному анализу. В нашей задаче допущен ещё один очень серьёзный с точки зрения уязвимости пробел. А именно, не используется блочный метод шифрзаписи, который позволил бы скрыть границы слов в исходном тексте. https://habr.com/ru/companies/first/articles/734004/ Алгоритмы и Структуры данных

Как я написал монитор пампов для биржи: от API до Telegram-уведомлений Я давно занимаюсь алготрейдингом, периодически также работают боты для монет с низкой капитализацией. На многих биржах остаются монеты маленькой и средней капитализации - периодически их пампят. В хороший день 10-15 монет могут дать рост больше чем на 50%. Первоначально бот не только уведомлял, но и открывал сделки. Однако для безопасной публикации я убрал торговую логику, так как бот пока что находится в стадии тестирования. Можно, при желании, добавить филтьтры по объёму, росту на 24часа и прочее. Я взял за основную цифру - 5% роста. Также при желании можно добавить и шорт-позиции, но пока что, в стадии теста, мне это неинтересно. https://habr.com/ru/articles/963358/ Алгоритмы и Структуры данных

👩‍💻 Всем программистам посвящается! Вот 17 авторских обучающих IT каналов по самым востребованным областям программирования
👩‍💻 Всем программистам посвящается! Вот 17 авторских обучающих IT каналов по самым востребованным областям программирования: Выбирай своё направление: 👩‍💻 Python — t.me/python_ready 🤖 Нейросетиt.me/neuro_ready 👩‍💻 IT Новости — t.me/it_ready 🤔 InfoSec & Хакинг — t.me/hacking_ready 🖥 SQL & Базы Данных — t.me/sql_ready 👩‍💻 C/C++ — https://t.me/cpp_ready 👩‍💻 C# & Unity — t.me/csharp_ready 👩‍💻 Java — t.me/java_ready 📖 IT Книги — t.me/books_ready 👩‍💻 Linux — t.me/linux_ready 🖼️ DevOpst.me/devops_ready 👩‍💻 Bash & Shell — t.me/bash_ready 🖥 Data Sciencet.me/data_ready 👩‍💻 Frontend — t.me/frontend_ready 📱 JavaScript — t.me/javascript_ready 👩‍💻 Backend — t.me/backend_ready 📱 GitHub & Git — t.me/github_ready 🐞 QA-тестирование t.me/qa_ready 🖥 Design — t.me/design_ready 📌 Гайды, шпаргалки, задачи, ресурсы и фишки для каждого языка программирования!