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

Вопросы о способах хранения данных, чтобы их можно было выгодно использовать в алгоритмах.

1
Существует ли существующая структура данных фиксированного размера, которая вытеснит самый старый / последний элемент, если будет добавлен новый элемент?
Я ищу структуру данных, которая вытолкнет его самый старый / последний элемент, если новый элемент будет вставлен. Например, давайте Dпредставим структуру. Dсодержит 3 элемента типа Number Dзначения по умолчанию будут инициализированы в 1, 2и 3. D = [ 1 , 2 ,3 ]Dзнак равно[1,2,3]D = [1, 2, 3] Если элемент …

1
Проблемы, для которых алгоритмы, основанные на уточнении разделов, работают быстрее, чем за логлиническое время
Уточнение разделов - это техника, в которой вы начинаете с конечного набора объектов и постепенно разбиваете набор. Некоторые проблемы, такие как минимизация DFA, могут быть достаточно эффективно решены с помощью уточнения разделов. Я не знаю никаких других проблем, которые обычно решаются с помощью уточнения раздела, кроме тех, которые перечислены на …

1
Поддержка структур данных для локального поиска SAT
WalkSAT и GSAT являются хорошо известными и простыми алгоритмами локального поиска для решения проблемы булевой выполнимости. Псевдокод для алгоритма GSAT скопирован с вопроса Реализация алгоритма GSAT - Как выбрать, какой литерал переворачивать? и представлены ниже. procedure GSAT(A,Max_Tries,Max_Flips) A: is a CNF formula for i:=1 to Max_Tries do S <- instantiation …

2
Создание самостоятельного бинарного дерева
У меня есть задание, в котором мне нужно использовать двоичное дерево поиска и изменить его на самоупорядочение таким образом, чтобы элементы, к которым обращаются чаще всего (имеют более высокий приоритет), находились в верхней части дерева, причем корень является наиболее доступным узлом , Профессор дал мне BST и нодовую структуру для …

5
Эффективное сжатие немеченых деревьев
Рассмотрим немаркированные, укоренившиеся двоичные деревья. Мы можем сжать такие деревья: всякий раз , когда есть указатели на поддерева и с (интерпретируя как структурное равенство), мы сохраняем (без потери общности) и заменить все указатели на с указателями на . См . Ответ Ули для примера.T ′ T = T ′ = …

2
Используются ли когда-либо деревья с вырезанными ссылками на практике, для вычисления максимального потока или других приложений?
Многие алгоритмы максимального потока, которые я обычно вижу реализованными, алгоритм Dinic, push relbel и другие, могут улучшить свои асимптотические временные затраты за счет использования динамических деревьев (также известных как деревья среза ссылок). Push-релабель запускается в или или нормально, но с динамическими деревьямиO ( V 3 ) O ( V 2 …

1
Почему функциональное программирование не исследовало динамические деревья?
Динамические деревья играют важную роль в решении таких проблем, как сетевые потоки, динамические графы, комбинаторные задачи («Динамические деревья на практике» Тарьяна и Вернека) и недавно объединенные словари («Простой объединяемый словарь» Адама Карчмара), Под динамическими деревьями я ссылаюсь на определение, изложенное в статье Слеатора и Тарьяна «Структура данных для динамических деревьев» …

12
Структура данных или алгоритм для быстрого поиска различий между строками
У меня есть массив из 100 000 строк, все длиной kkk . Я хочу сравнить каждую строку с любой другой строкой, чтобы увидеть, отличаются ли любые две строки на 1 символ. Прямо сейчас, когда я добавляю каждую строку в массив, я проверяю ее по каждой строке, уже находящейся в массиве, …

1
Какие классы структур данных можно сделать постоянными?
Постоянные структуры данных являются неизменными структурами данных. Операции над ними возвращают новую «копию» структуры данных, но измененную операцией; старая структура данных остается неизменной. Эффективность обычно достигается за счет совместного использования некоторых базовых данных и предотвращения полного копирования структуры данных. Вопросов: Есть ли результаты о классах структур данных, которые можно сделать …

1
Как время выполнения алгоритма Укконена зависит от размера алфавита?
Меня интересует вопрос об асимптотическом времени выполнения алгоритма Укконена , возможно, самого популярного алгоритма построения суффиксных деревьев за линейное (?) Время. Вот цитата из книги «Алгоритмы на строках, деревьях и последовательностях» Дэна Гасфилда (раздел 6.5.1): »... в Ахо-Corasick, Weiner, Ukkonen алгоритмы и McCreight все либо требуют пространство, илиΘ(m|Σ|)Θ(m|Σ|)\Theta(m|\Sigma|) временные рамки …


1
Взвешенная сумма последних N чисел
Предположим, мы получаем цифры в потоке. После получения каждого числа необходимо вычислить взвешенную сумму последних NNN чисел, где веса всегда одинаковы, но произвольны. Насколько эффективно это можно сделать, если нам разрешено сохранять структуру данных, чтобы помочь с вычислениями? Можем ли мы сделать что-то лучше, чем Θ(N)Θ(N)\Theta(N) , то есть пересчитывать …

1
Экономия на инициализации массива
Недавно я читал, что возможно иметь массивы, которые не нужно инициализировать, то есть их можно использовать, не тратя время на попытки установить для каждого элемента значение по умолчанию. то есть вы можете начать использовать массив, как если бы он был инициализирован значением по умолчанию без необходимости его инициализации. (Извините, я …

5
Каково самое раннее использование «деревьев» в информатике?
У меня есть небольшой исторический вопрос, а именно, как следует из заголовка, я ищу раннее использование деревьев (в качестве структуры данных, дерева поиска и т. Д.) В компьютерной науке.

2
Эффективные алгоритмы для задачи вертикальной видимости
Размышляя над одной проблемой, я понял, что мне нужно создать эффективный алгоритм, решающий следующую задачу: Проблема: нам дан двумерный квадратный прямоугольник со стороной nnn , стороны которого параллельны осям. Мы можем посмотреть на это через верх. Тем не менее, есть также mmm горизонтальных сегментов. Каждый сегмент имеет целочисленную координату yyy …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.