Вопросы с тегом «ds.data-structures»

Свойства и приложения структур данных, такие как нижние границы пространства или временная сложность вставки и удаления объектов.

563
Что нового в чисто функциональных структурах данных со времен Окасаки?

Со времени выхода книги Криса Окасаки «Чисто функциональные структуры данных» 1998 года я не видел слишком много новых интересных чисто функциональных структур данных; Я могу назвать только несколько: IntMap (также изобретен Окасаки в 1998 году, но не представлен в этой книге) Пальцевые деревья (и...

358
Алгоритмы из Книги.

Пол Эрдос говорил о «Книге», где Бог хранит самое элегантное доказательство каждой математической теоремы. Это даже вдохновило книгу (которая, я думаю, теперь в ее 4-м издании): Доказательства из Книги . Если бы у Бога была подобная книга для алгоритмов, какой алгоритм (ы), как вы думаете, был бы...

67
Мощные алгоритмы, слишком сложные для реализации

Какие алгоритмы законной полезности просто слишком сложны для реализации? Позвольте мне прояснить: я не ищу алгоритмы, такие как текущий асимптотический алгоритм оптимального умножения матриц (Coppersmith-Winograd), который разумно реализовать, но имеет константу, которая делает его бесполезным на...

60
Один стек, две очереди

фон Несколько лет назад, когда я был студентом, нам дали домашнее задание по амортизированному анализу. Я не смог решить одну из проблем. Я спрашивал об этом в теории , но удовлетворительного результата не было. Я помню курс, на котором Т.А. настаивал на том, что он не смог доказать, и сказал, что...

52
Для каких алгоритмов существует большой разрыв между теоретическим анализом и реальностью?

Два способа анализа эффективности алгоритма: поставить асимптотическую верхнюю границу времени выполнения и запустить его и собрать экспериментальные данные. Интересно, известны ли случаи, когда между (1) и (2) существует значительный разрыв. Под этим я подразумеваю, что либо (а) экспериментальные...

51
Каковы нерешенные вопросы в чисто функциональных структурах данных?

Этот вопрос вдохновлен другим вопросом о том, что нового в ПФДС с момента публикации книги Окасаки в 1998 году . Я начну с двух вопросов, которые у меня есть: Существует ли чисто функциональная структура данных набора, которая приближается к скорости хеш-таблиц? Попытки еще не там. Существуют ли...

36
Данные для тестирования алгоритмов графа

Я ищу источник огромных наборов данных для проверки реализации алгоритма графа. Просьба также предоставить некоторую информацию о типе / распределении (например, направленных / ненаправленных, простых / не простых, взвешенных / невзвешенных) графиков в источнике, если они...

36
Есть ли хеш-функция для набора (то есть, множества) целых чисел, которое имеет хорошие теоретические гарантии?

Мне любопытно, есть ли способ хранить хэш из нескольких множеств целых чисел, который в идеале имеет следующие свойства: Использует пространство O (1) Его можно обновить, чтобы отразить вставку или удаление за время O (1). Две идентичные коллекции (т. Е. Коллекции, имеющие одинаковые элементы с...

35
Алгоритмы высшего порядка

Большинство известных алгоритмов первого порядка в том смысле, что их ввод и вывод являются «простыми» данными. Некоторые из них являются вторым порядком тривиальным способом, например, сортировка, хеш-таблицы или функции map и fold: они параметризуются функцией, но на самом деле они не делают с...

35
Вероятностный набор без ложных срабатываний?

Итак, фильтры Блума довольно крутые - это наборы, которые поддерживают проверку членства без ложных отрицаний, но с небольшой вероятностью ложных срабатываний. Однако недавно я хотел «фильтр Блума», который гарантирует обратное: никаких ложных срабатываний, но потенциально ложных отрицательных. Моя...

34
Сравнительная структура данных для поиска предметов

Существует ли структура данных, которая принимает неупорядоченный массив из элементов, выполняет предварительную обработку в и отвечает на запросы: есть ли какой-то элемент в списке, каждый запрос в наихудшее время ?O ( n ) x O ( log n )nnnO(n)O(n)O(n)xИксxO(logn)О(журнал⁡N)O(\log n) Я...

32
Зачем кому-то использовать Octree поверх KD-дерева?

У меня есть некоторый опыт в научных вычислениях, и я широко использовал kd-деревья для приложений BSP (разбиение двоичного пространства). Недавно я стал более знаком с октреями, схожей структурой данных для разделения трехмерных евклидовых пространств, но той, которая работает с фиксированными...

32
Есть ли стабильная куча?

Существует ли структура данных очереди с приоритетами, которая поддерживает следующие операции? Вставить (x, p) : добавить новую запись x с приоритетом p StableExtractMin () : возвращает и удаляет запись с минимальным приоритетом, разрывая связи по порядку вставки . Таким образом, после вставки (a,...

28
Бинарный поиск обобщений для поэтов?

Предположим, у меня есть poset "S" и монотонный предикат "P" на S. Я хочу найти один или все максимальные элементы S, удовлетворяющие P. EDIT : Я заинтересован в минимизации количества оценок P . Какие алгоритмы существуют для этой проблемы и какие свойства и дополнительные операции они требуют на...

27
Я мечтал о структуре данных, она существует?

Мне не удалось найти эту структуру данных, но я не эксперт в этой области. Структура реализует множество и представляет собой массив сопоставимых элементов с инвариантом. Инвариант следующий (определяется рекурсивно): Массив длиной 1 является массивом слияния. Массив длиной 2 ^ n (для n> 0)...

25
Нетривиальный алгоритм вычисления медианы скользящего окна

Мне нужно рассчитать бегущую медиану: Ввод: , , вектор .k ( x 1 , x 2 , … , x n )NnnКkk( х1, х2, … , ХN)(x1,x2,…,xn)(x_1, x_2, \dotsc, x_n) Вывод: vector , где - это медиана .y i ( x i , x i + 1 , … , x i + k - 1 )( у1, у2, ... , уn - k + 1)(y1,y2,…,yn−k+1)(y_1, y_2, \dotsc, y_{n-k+1})Yяyiy_i( хя,...

24
Справочник по сложным структурам данных

Я ищу книгу о продвинутых структурах данных, которая выходит за рамки того, что описано в стандартных учебниках, таких как Cormen, Leiserson, Rivest и Stein "Введение в алгоритмы". Книга, которую можно использовать для преподавания курса для выпускников по продвинутым структурам данных, таким как...

24
Параллельный динамический поиск

Существует ли естественный параллельный аналог красно-черных деревьев со схожими или даже не очень худшими свойствами для обновлений, хотя он достаточно эффективен для работы? В целом, что мы можем сделать лучше для параллельного поиска с обновлениями?...

22
Аналоги сжатого зондирования

При сжатии считывания цель состоит в том, чтобы найти схемы линейного сжатия для огромных входных сигналов, которые, как известно, имеют разреженное представление, чтобы входной сигнал мог быть эффективно восстановлен из сжатия («эскиз»). Более формально, стандартная установка состоит в том, что...

22
Разбиваемый стек

Что известно о структурах данных, которые могут поддерживать последовательность элементов, подлежащих следующим двум операциям? Нажмите (x): добавьте x в конец последовательности и верните идентификатор для его позиции в последовательности Извлечение (S): учитывая неупорядоченный набор...