RU

Тап по тысяче точек за O(log n): QuadTree и сферическая геометрия в гео-соцсети

9 лет назад я разрабатывал геолокационную соц.сеть на заказ, где мы отображали чаты на карте. До релиза не дошло, но интересного опыта было получено м…

iOSSwiftалгоритмыQuadTreeструктуры данныхпространственный индекссферическая геометрияMapboxкартыоптимизация
Habr
RU

Тап по тысяче точек за O(log n): QuadTree и сферическая геометрия в гео-соцсети

Как-то раз я разрабатывал геолокационную соцсеть. Эта статья – продолжение предыдущей, в ней описывается, как определить, на что на карте нажал пользо…

алгоритмыQuadTreeструктуры данныхпространственный индекссферическая геометрияMapboxкартыоптимизация
Habr
RU

[Перевод] 6/7. Целая прорва связных списков, чтобы выучить Rust: Небезопасный двусвязный дек продуктового уровня

Ладно, забудьте всё, что было раньше. Весь этот детский лепет про ссылки и указатели. Настало время писать настоящий продуктовый код. Посмотрим, как о…

rustструктуры данныхсписки
Habr
RU

[Перевод] 5/7. Целая прорва связных списков, чтобы выучить Rust: Хорошая небезопасная очередь

Вероятно, самая важная глава в книге про реализацию связных списков на языке Rust. И уж точно самая длинная. Здесь автор рассказывает про сырые указат…

rustструктуры данныхсписки
Habr
RU

[Перевод] 4/7. Целая прорва связных списков, чтобы выучить Rust: Плохой, но безопасный двусвязный дек

Наконец мы добрались до поистине сложной темы. Если вы думаете, что раньше были сложные, вы глубоко заблуждаетесь! Двусвязный список на Rust. Это вооб…

rustструктуры данныхсписки
Habr
RU

Мой bloom фильтр побил оригинальный в 200 раз

Срочно переписывайте свои устаревшие bloom фильтры на мой богоподобный lz77-фильтр. Совершенно бесплатно! Спасибо великому нанабанана за обложку! Чита…

bloombloom filtermembershiplz77сжатие данныхструктурыструктуры данныхпоисковые алгоритмы
Habr
RU

[Перевод] 3/7. Целая прорва связных списков, чтобы выучить Rust: Устойчивый односвязный стек

Списки, которые мы реализовывали до сих пор нельзя назвать настоящими функциональными списками потому что настоящий функциональный список должен быть …

rustструктуры данныхсписки
Habr
RU

[Перевод] 1/7. Целая прорва связных списков, чтобы выучить Rust: Плохой односвязный стек

Продолжаем знакомство с ссылочной магией в Rust. Вместе с автором создаём первый работающий список, наступая на все возможные грабли. В конце взъероше…

rustструктуры данныхсписки
Habr
RU

[Перевод] Структуры данных на практике. Глава 15: Графы и их обход с эффективным использованием кэша

«Задача абстракции — не быть расплывчатой, а создать новый семантический уровень, на котором можно достичь абсолютной точности», — Эдсгер Дейкстра Взр…

графыструктуры данныхобнаружение топологии сети
Habr
RU

[Перевод] Беззнаковые размеры: пять лет назад мы совершили ошибку

Краткое примечание для читателей, не знающих о C3: это язык системного программирования, продолжающий традиции C. В статье приведена специфика C3, но …

беззнаковые целочисленные типыструктуры данныхзнаковые числаc3
Habr
RU

Модуль collections в Python: ваш чит-код для решения алгоритмических задач

Пишете list.pop(0) и удивляетесь, почему решение на LeetCode отваливается по Time Limit? Пора перестать изобретать велосипед. Модуль collections — это…

pythoncollectionsалгоритмыleetcodeсобеседованияструктуры данныхdequecounterdefaultdictbig o