Почему O(1) проигрывает O(n): структуры данных в Go на реальном железе
Объясню структуры данных через очередь в поликлинике, а потом покажу, где эта аналогия ломается: почему связный список с «вставкой за O(1)» в прикла…
Tech news from the best sources
Объясню структуры данных через очередь в поликлинике, а потом покажу, где эта аналогия ломается: почему связный список с «вставкой за O(1)» в прикла…
Представьте: через ваш сервер проходит 10 миллионов запросов в минуту. Каждый запрос содержит метку (например, ID пользователя, IP-адрес или поисков…
Мне нужен был сервис, в котором должны были работать несколько разных алгоритмов. Часть математики я помнил, часть понимал поверхност…
Вслед за Эдвардом Сьоре, или как я писал свою реализацию on disk B+Tree-индекса на Rust. В этой статье попытаюсь осветить нюансы написание своего иг…
Привет, это Антон Пионтковский из команды Monium Metrics, и вместе с коллегами мы создаём observability‑платформу для сбора, хра…
Представим, что вы имеете сервер, который обрабатывает и анализирует 100.000 RPS. Вам нужно высчитать и показать на дашборде 99-й перцентиль задержк…
Представьте: вы пишете парсер, который обходит сотни миллионов URL. Каждую новую ссылку нужно проверить — посещали ли мы её раньше? Заводить гигабай…
Есть опыт, который не купишь и не прочитаешь. Его можно только пережить. Три недели алгоритмов с нуля, публичный мок в Яндекс Практикуме перед живой…
9 лет назад я разрабатывал геолокационную соц.сеть на заказ, где мы отображали чаты на карте. До релиза не дошло, но интересного опыта было получено…
Как-то раз я разрабатывал геолокационную соцсеть. Эта статья – продолжение предыдущей, в ней описывается, как определить, на что на карте нажал поль…
Я публиковал перевод Too Many Linked Lists по мере готовности, поэтому каждая отдельная глава представлена отдельной статьёй на Хабре. Книгу в таком…
Вот мы и добрались до конца. Перед вами последняя, седьмая глава книги Learn Rust With Entirely Too Many Linked Lists. И немного дурацких списков. К…
Ладно, забудьте всё, что было раньше. Весь этот детский лепет про ссылки и указатели. Настало время писать настоящий продуктовый код. Посмотрим, как…
Вероятно, самая важная глава в книге про реализацию связных списков на языке Rust. И уж точно самая длинная. Здесь автор рассказывает про сырые указ…
Наконец мы добрались до поистине сложной темы. Если вы думаете, что раньше были сложные, вы глубоко заблуждаетесь! Двусвязный список на Rust. Это во…
Срочно переписывайте свои устаревшие bloom фильтры на мой богоподобный lz77-фильтр. Совершенно бесплатно! Спасибо великому нанабанана за обложку! Чи…
Списки, которые мы реализовывали до сих пор нельзя назвать настоящими функциональными списками потому что настоящий функциональный список должен быт…
Продолжаем знакомство со списками в Rust. Перепишем код, избавившись от типа Link и заменив его на Option. Сделаем наш список обобщённым. И добавим…
Продолжаем знакомство с ссылочной магией в Rust. Вместе с автором создаём первый работающий список, наступая на все возможные грабли. В конце взъеро…
«Задача абстракции — не быть расплывчатой, а создать новый семантический уровень, на котором можно достичь абсолютной точности», — Эдсгер Дейкстра В…
Краткое примечание для читателей, не знающих о C3: это язык системного программирования, продолжающий традиции C. В статье приведена специфика C3, н…
Начал перевод, видимо, базового руководства по сложным темам в Rust (не считая Растономикона, который вообще про чёрную магию) — Learning Rust…
Пишете list.pop(0) и удивляетесь, почему решение на LeetCode отваливается по Time Limit? Пора перестать изобретать велосипед. Модуль collections — э…