Запитання з тегом «data-structures»

Питання про способи зберігання даних, щоб їх можна було вигідно використовувати алгоритми.

1
Чи існує існуюча структура даних, яка має фіксований розмір, і виштовхне найстаріший / останній елемент, якщо вставлений новий елемент?
Я шукаю структуру даних, яка виштовхне його найстаріший / останній елемент, якщо вставити новий елемент. Наприклад, нехай Dпредставляє структуру. Dмістить 3 елементи Number Dтипових значень типу буде ініціалізовано до 1, 2та 3. D = [ 1 , 2 , 3 ]D=[1,2,3]D = [1, 2, 3] Якщо Numberщо містить значення 5вставляється …

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 …

2
Створення самостійного замовлення бінарного дерева
У мене є завдання, де мені потрібно скористатись двійковим деревом пошуку та змінити його, щоб самозамовитись таким чином, щоб елементи, до яких звертається найбільше (мають більший пріоритет), були у верхній частині дерева, корінь - самий доступний вузол . Професор дав мені BST і структуру вузлів, з якими я працюю, але …

5
Ефективне стиснення не маркованих дерев
Розгляньте не марковані, вкорінені двійкові дерева. Ми можемо стиснути такі дерева: коли є покажчики на підтрубки і T ′ з T = T ′ (трактуючи = як структурна рівність), ми зберігаємо (wlog) T і замінюємо всі покажчики на T ′TTTT′T′T'T=T′T=T′T = T'===TTTT′T′T' з покажчиками на . Див . Приклад відповіді …

2
Чи використовуються колись зрізані дерева на практиці для обчислення максимального потоку чи інших застосувань?
Багато алгоритмів максимуму потоку, які я зазвичай бачу реалізованими, алгоритм Дініка, натискання реле та інші, можуть покращити свою асимптотичну вартість часу завдяки використанню динамічних дерев (також відомих як дерева-зрізані посилання). Реле натискання працює в або O ( V 3 ) або O ( V 2 √О ( V2Е)О(V2Е)O(V^2E)О( V3)О(V3)O(V^3)нормально, але …

1
Чому функціональне програмування не досліджувало динамічні дерева?
Динамічні дерева відіграють важливу роль у вирішенні таких задач, як мережеві потоки, динамічні графіки, комбінаторні проблеми ("Динамічні дерева на практиці" Таряна та Вернека) та словники, що нещодавно зливаються ("Простий об'єднаний словник" Адама Карчмарца), Під динамічними деревами я маю на увазі визначення, викладене в статті Sleator & Tarjan "Структура даних для …

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

1
Яким чином час виконання алгоритму Укконена залежить від розміру алфавіту?
Мене хвилює питання про асимптотичний час роботи алгоритму Укконена , можливо, найпопулярнішого алгоритму побудови дерев суфіксів у лінійному (?) Часі. Ось цитата з книги "Алгоритми про струни, дерева та послідовності" Дена Гусфілда (розділ 6.5.1): "... алгоритми Aho-Corasick, Weiner, Ukkonen та McCreight або вимагають простору , або обмежений час O ( …

1
Які класи структур даних можна зробити стійкими?
Стійкі структури даних - це незмінні структури даних. Операції над ними повертають нову "копію" структури даних, але змінену операцією; стара структура даних залишається незмінною. Ефективність зазвичай досягається шляхом обміну деякими базовими даними та уникнення повного копіювання структури даних. Запитання: Чи є результати щодо класів структур даних, які можна зробити стійкими …


1
Зважена сума останніх N чисел
Припустимо, ми отримуємо номери в потоці. Після отримання кожного числа необхідно обчислити зважену суму останніх чисел, де ваги завжди однакові, але довільні.NNN Наскільки ефективно це можна зробити, якщо нам дозволяють зберігати структуру даних, щоб допомогти в обчисленні? Чи можемо ми зробити краще, ніж , тобто перерахувати суму щоразу, коли число …

1
Збереження при ініціалізації масиву
Нещодавно я прочитав, що можна мати масиви, які не потрібно ініціалізувати, тобто можна використовувати їх, не витрачаючи часу, намагаючись встановити для кожного члена значення за замовчуванням. тобто ви можете почати використовувати масив так, ніби він був ініціалізований значенням за замовчуванням без необхідності його ініціалізації. (Вибачте, я не пам'ятаю, де я …


2
Ефективні алгоритми для проблеми вертикальної видимості
Під час роздумів над однією проблемою я зрозумів, що мені потрібно створити ефективний алгоритм для вирішення наступного завдання: Проблема: нам дається двовимірне квадратне поле зі сторони , сторони якого паралельні осям. Ми можемо заглянути в нього через верх. Однак є і горизонтальних сегментів. Кожен сегмент має ціле число -координат ( …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.