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

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

5
Які причини вивчати різні алгоритми / структури даних, що відповідають одній цілі?
Мене цікавить це питання ще з часів студентства. Це загальне питання, але я докладно поясню приклади нижче. Я бачив багато алгоритмів - наприклад, для проблем з максимальним потоком я знаю близько 3 алгоритмів, які можуть вирішити проблему: Ford-Fulkerson, Edmonds-Karp & Dinic, причому Dinic має найкращу складність. Для структур даних - …


4
(Коли) є пошук хеш-таблиці O (1)?
Часто кажуть, що пошук хеш-таблиць працює в постійний час: ви обчислюєте значення хеша, яке дає вам індекс для пошуку масиву. І все ж це ігнорує зіткнення; в гіршому випадку кожен елемент висаджується в одне відро і час пошуку стає лінійним ( ).Θ(n)Θ(n)\Theta(n) Чи є умови в даних, які можуть зробити …

4
Чому найкраще використовувати просте число як мод у функції хешування?
Якщо у мене є список ключових значень від 1 до 100 і я хочу організувати їх у масиві з 11 відер, мене вчили формувати модову функцію H=kmod 11H=kmod 11 H = k \bmod \ 11 Тепер усі значення будуть розміщені одне за одним у 9 рядках. Наприклад, у першому відрі …

4
Чому червоно-чорні дерева такі популярні?
Здається, що скрізь, де я дивлюся, структури даних реалізуються за допомогою червоно-чорних дерев ( std::setу C ++, SortedDictionaryу C # тощо) Щойно накривши (a, b), червоно-чорні та AVL дерева в моєму класі алгоритмів, ось що у мене вийшло (також розпитуючи професорів, переглядаючи кілька книжок і трохи гуглившись): Дерева AVL мають …

9
Чи існує черговість черги з витягами ?
Існує дуже багато структур даних, які реалізують інтерфейс черги з пріоритетом: Вставка: вставити елемент в структуру Get-Min: повертає найменший елемент у структурі Extract-Min: видаліть найменший елемент структури Поширеними структурами даних, що реалізують цей інтерфейс, є (хв) купи . Зазвичай (амортизовані) тривалість цих операцій: Вставте: (іноді )O ( журнал n )O(1)O(1)\mathcal{O}(1)O(logn)O(log⁡n)\mathcal{O}(\log …

1
Уявіть собі червоно-чорне дерево. Чи завжди є послідовність вставок та видалень, що створює її?
Припустимо наступне визначення червоно-чорного дерева: Це дерево бінарного пошуку. Кожен вузол забарвлений червоним або чорним кольором. Корінь чорний. Два вузли, з'єднані краєм, не можуть бути червоними одночасно. Тут має бути чітке визначення листа NIL, як на wiki. Лист НІЛ забарвлений у чорний колір. Шлях від кореня до будь-якого листа НІЛ …

2
Ефективні структури даних для побудови швидкої перевірки орфографії
Я намагаюся написати перевірку орфографії, яка повинна працювати з досить великим словником. Я дуже хочу, щоб ефективний спосіб індексувати мої словникові дані, використовуючи відстань Дамерау-Левенштейн, щоб визначити, які слова найближчі до неправильно написаного слова. Я шукаю структуру даних, яка б дала мені найкращий компроміс між складністю простору та складністю виконання. …

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

3
Чи вплине обладнання та реалізація на складність алгоритмів часу / простору?
Я навіть не студент CS, тому це може бути дурним питанням, але будь ласка, майте на собі ... У епоху перед комп'ютером ми можемо реалізувати структуру даних масиву лише на зразок масиву ящиків. Оскільки вам потрібно знайти ящик з відповідним індексом, перш ніж витягувати з нього значення, часова складність пошуку …

2
Яка різниця між радіаційними деревами і Патрісія намагається?
Я дізнаюся про дерева радіації (він же стискається) і Патріція намагається, але я знаходжу суперечливу інформацію про те, чи є вони насправді чи ні. Дерево з радіацією може бути отримане від звичайного (нестисненого) трійника шляхом злиття вузлів з батьками, коли вузли є єдиною дитиною. Це також стосується спроб Патриції. Чим …

1
Хеш-таблиці проти бінарних дерев
Під час реалізації словника ("Я хочу шукати дані клієнтів за їх ідентифікаторами клієнтів") типовими структурами даних є хеш-таблиці та двійкові дерева пошуку. Я знаю, наприклад, що бібліотека STL C ++ реалізує словники (вони називають їх картами), використовуючи (врівноважені) двійкові дерева пошуку, а .NET Framework використовує хеш-таблиці під кришкою. Які переваги …

2
Чи не всі червоно-чорні дерева врівноважені?
Інтуїтивно "збалансовані дерева" повинні бути деревами, де ліві та праві піддерева у кожному вузлі повинні мати "приблизно однакову" кількість вузлів. Звичайно, коли ми говоримо про те, що червоно-чорні дерева * (див. Визначення в кінці) є врівноваженими, ми фактично маємо на увазі, що вони збалансовані по висоті і в цьому сенсі …

2
Чому тип пустоти C не є аналогом типу порожній / нижній?
Вікіпедія, а також інші джерела, які я знайшов, перелічують voidтип C як тип одиниці, а не порожній. Я вважаю це заплутаним, як мені здається, що voidкраще відповідає визначенню типу порожній / нижній. voidНаскільки я можу сказати, цінності не населяються . Функція з типом повернення void вказує, що функція нічого не …
28 type-theory  c  logic  modal-logic  coq  equality  coinduction  artificial-intelligence  computer-architecture  compilers  asymptotics  formal-languages  asymptotics  landau-notation  asymptotics  turing-machines  optimization  decision-problem  rice-theorem  algorithms  arithmetic  floating-point  automata  finite-automata  data-structures  search-trees  balanced-search-trees  complexity-theory  asymptotics  amortized-analysis  complexity-theory  graphs  np-complete  reductions  np-hard  algorithms  string-metrics  computability  artificial-intelligence  halting-problem  turing-machines  computation-models  graph-theory  terminology  complexity-theory  decision-problem  polynomial-time  algorithms  algorithm-analysis  optimization  runtime-analysis  loops  turing-machines  computation-models  recurrence-relation  master-theorem  complexity-theory  asymptotics  parallel-computing  landau-notation  terminology  optimization  decision-problem  complexity-theory  polynomial-time  counting  coding-theory  permutations  encoding-scheme  error-correcting-codes  machine-learning  natural-language-processing  algorithms  graphs  social-networks  network-analysis  relational-algebra  constraint-satisfaction  polymorphisms  algorithms  graphs  trees 

1
Чи існує структура даних "стек рядків", яка підтримує ці рядкові операції?
Я шукаю структуру даних, яка зберігає набір рядків над набором символів , здатним виконувати наступні операції. Позначимо , в якості структури даних , що зберігає безліч рядків .D ( S ) SΣΣ\SigmaD (S)D(S)\mathcal{D}(S)SSS Add-Prefix-Seton : заданий деякий набір (можливо, порожніх) рядків, розмір яких обмежений постійною, а довжина рядків обмежена постійною, …

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