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

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

Open in Telegram

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

Show more
7 760
Subscribers
-324 hours
-77 days
-3630 days
Posts Archive
Чувак, где моя черепаха? Как написать программу, чтобы победить на конкурсе плохого кода? Этот вопрос я задал сам себе, когда прочёл о необычном челлендже на форуме reddit. Да, вы правильно поняли. Это статья не о чистом коде и правильных тестах. Но здесь не будет и речи о плохом, заурядно плохом коде, том коде, который мы очень часто видим в наших проектах. Я расскажу об экстремальном, невообразимом, гениально плохом коде, коде, который использует те возможности джавы, о которых вы, скорее всего, и не догадывались, и те приёмы, которые вы никогда не встретите в обычных проектах. Сможете ли вы использовать эти приёмы на практике? Думаю, нет. Если вы прагматичный человек, то сэкономите своё время и остановитесь. Не читайте эту статью. Однако если вы хотите немного отвлечься от повседневной рутины, увидеть и узнать что-то новое о нашем любимом языке Java, - милости просим! https://habr.com/ru/articles/681488/ Алгоритмы и Структуры данных

Как передать произвольное количество бит, передав 2 бита Недавно прочитал статью на Пикабу про бесконечное сжатие, где предлагалось создать словарь 3-х байтовых блоков, и представлять информацию в виде ссылок на эти блоки. Понял что выигрыша в этом нет, но идея передавать не саму информацию, а что-то другое, меня зацепила. Начал размышлять, допустим демон на дне океана перекусывает нитку оптоволокна и смотрит, как туда сюда бегут 1 и 0. Какой в них смысл? Одно и тоже. И правда, как извлечь смысл из этого однообразия. А здесь вступают в игру фактор времени и договоренности. То есть добавляются дополнительные измерения, о которых демон не знает. Стартовые, стоповые биты, длина пакета. Стал думать, хорошо, как можно использовать время, договоренность и идею передавать не саму информацию, а ссылку на нее. Как передать ссылку на информацию в словаре, не передавая ее. Допустим передать не сами 4 бита информации, а индекс строки этих 4-х битов в таблице всех возможных значений 4 бит. https://habr.com/ru/articles/893274/ Алгоритмы и Структуры данных

Структуры данных: бинарные деревья. Часть 2: обзор сбалансированных деревьев Во второй статье я приведу обзор характеристик различных сбалансированных деревьев. Под характеристикой я подразумеваю основной принцип работы (без описания реализации операций), скорость работы и дополнительный расход памяти по сравнению с несбаланчированным деревом, различные интересные факты, а так же ссылки на дополнительные материалы. https://habr.com/ru/articles/66926/ Алгоритмы и Структуры данных

Узнай подходящую тебе карьеру за 5 минут. Онлайн-школа участник проекта "Сколково" создала уникальный инструмент профориентации, который раскроет ваш потенциал. Простой тест с вариантами ответа, менее чем из 20 вопросов. В конечный результат вошли только самые востребованные профессии для 2025 года, большинство специальностей из сферы IT и Дизайна, именно в них на сегодня наибольшие доходы. Переходите по специальной ссылке, получите карьерную консультацию в подарок, и разберите индивидуально ваш комфортный переход в новую профессию. Реклама. Информация о рекламодателе по ссылкам в посте.

Кривые в компьютерной графике. Урок 1: Анимации Мы продолжаем цикл статей про математику и смежные дисциплины в компьютерной графике по курсу Александра Паничева, ведущего разработчика логики в UNIGINE. В этот раз поговорим о функциях плавности, которые используются в анимации (и не только). https://habr.com/ru/companies/unigine/articles/680996/ Алгоритмы и Структуры данных

Шахматы на C++ Не так давно я захотел написать свой шахматный движок. На удивление в Интернете нашлось не так много хороших статей на эту тему. Были статьи с довольно слабыми программами, многие из которых даже умудрялись пропускать некоторые важные правила. А были статьи с хорошими программами (некоторые из них были даже чуть лучше чем получилось у меня в итоге), но там авторы рассказывали лишь основные идеи, пропуская подробности, из-за чего написать что-то свое по таким статьям было проблематично. Поэтому после написания своей программы, я решил написать статью, дабы облегчить жизнь интересующимся в данной теме. Я не претендую на лучшую шахматную программу или на чистейший код, но эта статья будет хорошим и легким началом для тех, кто хочет написать что-то свое. https://habr.com/ru/articles/682122/ Алгоритмы и Структуры данных

Дедупликация объявлений: как мы боремся с одинаковыми размещениями В этой статье я расскажу, как мы решили задачу дедупликации объявлений о недвижимости, разработав систему на основе трёх моделей. Эта система автоматически находит и объединяет дублирующиеся объявления, помогая пользователям видеть только актуальную и уникальную информацию. Материал будет полезен ML-инженерам и специалистам по обработке данных, которым интересно, как мы подошли к решению этой задачи: какие методы использовали, какие проблемы возникли и как мы их преодолели. https://habr.com/ru/companies/cian/articles/892650/ Алгоритмы и Структуры данных

Армения посреди Америки, Китая и России: отчет с EDA Connect 2025 Мысль, что Армения удобна тем, что соединяется и с Америкой, и с Китаем - высказал мне один из китайских участников конференции EDA Connect. А мысль, что Армения соединяется еще и с Россией - возникала естественно при просмотре докладов о логическом синтезаторе, статическом анализаторе и верификации с помощью UVM. Помимо докладов, при конференции прошел хакатон по Verilog и FPGA, на который пришли студенты из Ереванского университета, русско-армянского университета, американо-армянского, французско-армянского, европейско-армянского, и других университетов. Занятно, что второй день хакатона проходил в комнате напротив зала, где большое начальство встречалось с Премьер-Министром Армении. Один из студентов хакатона перепутал дверь, и его перенаправила секьюрити. https://habr.com/ru/articles/891814/ Алгоритмы и Структуры данных

Моя история подготовки к интервью в FAANG На Хабре существует огромное множество статей на подобные темы, эта статья не будет исключением. Я лишь хотел бы поделиться своим опытом подготовки к кодинг интервью в крупные компании. Постараюсь описать процесс настолько подробно, насколько я его запомнил, со статистикой, таймлайном и моим отношением к нему. https://habr.com/ru/articles/682358/ Алгоритмы и Структуры данных

Сортировка слиянием на CUDA Я решил изучить, как повысится производительность алгоритмов сортировки при их реализации на CUDA. Моя цель — понять, как можно использовать мощь параллельных вычислений для ускорения алгоритмов сортировки. В качестве тестового я возьму алгоритм сортировки слиянием (merge sort), потому что он удобно разбивает задачу на меньшие подзадачи с двумя равными половинами, что хорошо подходит для параллельных вычислений. https://habr.com/ru/companies/ruvds/articles/892306/ Алгоритмы и Структуры данных

Всего за 5 минут определите подходящую вам IT-профессию. Онлайн-школа Skillfactory разработала уникальный профориентационный тест из 18 вопросов. Ответив на них, узнаете наиболее подходящую вам специальность. Работайте в российских или зарубежных компаниях, в офисе или удаленно. Для айтишников — сниженная ставка по ипотеке, высокая зарплата, комфортные условия и гибкий график. Переходите по специальной ссылке, чтобы пройти тест, получить карьерную консультацию и мини-курс для выбора профессии в IT или дизайне Реклама. Информация о рекламодателе по ссылкам в посте.

А не пора ли нам подкрепиться? В этой заметке я попробую добавить немного интуиции в эту черную магию, зайдя в тему с главного входа, то есть путем реализации алгоритма Q-learning для задачи коммивояжера. https://habr.com/ru/articles/892078/ Алгоритмы и Структуры данных

Поиск нечетких дубликатов. Алгоритм шинглов для веб-документов Ранее я показал элементарную реализацию алгоритма шинглов, позволяющую определять, являются ли два документа почти дубликатами или нет. В этот раз я поясню реализацию алгоритма, описанную Зеленковым Ю. Г. и Сегаловичем И.В. в публикации «Сравнительный анализ методов определения нечетких дубликатов для Web-документов». Этим я начинаю серию из трех теоретических статей, в которых постараюсь доступным языком описать принцип алгоритмов шинглов, супершинглов и мегашинглов для сравнение веб-документов. В публикации об алгоритмах поиска почти дубликатов предлагается версия алгоритма шинглов, использующая случайную выборку 84х случайных шинглов. Почему именно 84? Использование 84х случайно выбранных значений контрольных сумм позволит легко модифицировать алгоритм до алгоритма супершинглов и мегашинглов, которые гораздо менее ресурсоемки. Их я опишу ближайшее время. Рекомендую вооружиться ручкой и листком бумаги и фигурально представлять в виде рисунка каждый из этапов, описанных ниже. https://habr.com/ru/articles/65944/ Алгоритмы и Структуры данных

PowerShell: обход и визуализация HTML-дерева из файла Ранее я написал скрипт для программы-оболочки «Windows PowerShell» версии 5.1 (или для «PowerShell» версии 7), работающей в операционной системе «Windows 10». Этот скрипт получает текст из текстового файла с кодом на языке HTML (в кодировке UTF-8 без метки BOM) и помещает его в переменную $html типа System.String. После этого с помощью библиотеки «HTML Agility Pack» содержимое переменной $html конвертируется в объект $dom, содержащий HTML-дерево: https://habr.com/ru/articles/682438/ Алгоритмы и Структуры данных

ByBit заблокировала трейдера, который вложил 1200$ в токен RED и заработал 490 000$ Коллекционер крипты тот самый вкладчик. Он не расстраивается блокировке, ведь за 2 месяца уже заработал больше миллиона долларов на росте крипты. Он покупал XRP, когда все кричали, что это скам и роста не будет. В итоге с $0.35 монета выросла до $2.2. Также произошло с SOL, ELX и BBQ, которые дали больше 1000% иксов. В своем канале раз в неделю он дает 1 проверенную сделку, в которую заходит на 100 000$. А его капитал уже 7 000 000$ Скоро на рынке будет булран, поэтому если хотите откусить свой кусок пирога и изменить жизнь, подписывайтесь: https://t.me/+KJDzkrw0y4QyNDg6

Камеры трясутся, шум зашкаливает, а сравнивать нужно: как справляются алгоритмы? Каждый день миллионы изображений, видео и аудиофайлов загружаются в интернет. Мы смотрим фильмы, слушаем музыку, листаем соцсети, даже не задумываясь о том, какие алгоритмы стоят за тем, чтобы контент отображался корректно и не повторялся. Но что, если вам нужно сравнивать медиаконтент автоматически? Как понять, одинаковые ли две фотографии, если одна немного темнее? Как сравнить два видео, если они сняты под разными углами? А что делать, если вам нужно найти дубликат аудиофайла, но на одной записи есть шум? Если эти вопросы вам интересны – добро пожаловать в мир сравнения медиаконтента! Сегодня мы разберем, какие бывают методы, их плюсы и минусы, а главное – расскажем о наших экспериментах, где мы проверили, какие алгоритмы лучше справляются с реальными проблемами. https://habr.com/ru/articles/891802/ Алгоритмы и Структуры данных

Тестирование: быстрый старт в IT за 0₽ Зарплата начинающего Тестировщика от 80 000₽. Он проверяет работу сайтов, мобильных пр
Тестирование: быстрый старт в IT за 0₽ Зарплата начинающего Тестировщика от 80 000₽. Он проверяет работу сайтов, мобильных приложений и ищет в них ошибки. От тестировщика во многом зависит качество итогового продукта, поэтому спрос на данных специалистов растёт. Прямо сейчас Skillbox отдает пятидневный курс по тестированию бесплатно. Переходите по ссылке и участвуйте в тест-драйве профессии. Акция продлится до 19 марта: https://go.redav.online/3ce9ac7270bf9c50?erid=2VfnxxcSezk&m=1

Программный код в Big data и Power law В статье приводятся оригинальные модули Python и даётся краткое пояснение по их применению в задачах распределённой децентрализованной сети по типу блокчейн или, другими словами, в процессах самоорганизованной критичности (SOC). В научных публикациях чаще встречается физический термин SOC в качестве концепции, включающей процессы турбулентности, детонации, землетрясения, нейросети, фондовая волатильность, социальный рейтинг и другие. https://habr.com/ru/articles/891278/ Алгоритмы и Структуры данных

SQL HowTo: моделирование против подсчета (Advent of Code 2024, Day 21: Keypad Conundrum) В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024. Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать. Пробуем смоделировать преобразования строк "в лоб", а потом - организовать подсчет и решить более сложную задачу в разы быстрее простой! https://habr.com/ru/companies/tensor/articles/891522/ Алгоритмы и Структуры данных