Комп'ютерна наука

Питання та відповіді для студентів, дослідників та практиків комп'ютерних наук

2
Пошук найкоротших і найдовших шляхів між двома вершинами в DAG
З огляду на незважене DAG (спрямований ациклічний графік) та дві вершини і , чи можна знайти найменший і найдовший шлях від до в поліноміальний час? Довжина шляху вимірюється кількістю ребер.s t s tD=(V,A)D=(V,A)D = (V,A)ssstttsssttt Мені цікаво знайти діапазон можливих довжин шляху в многочлен. Пс., Це запитання є дублікатом найдовшого …

2
Чи регулярна мова слів, що містять рівну кількість 001 та 100?
Мені було цікаво, коли мови, які містять однакову кількість примірників двох підрядків, будуть регулярними. Я знаю, що мова, що містить рівну кількість 1s та 0s, не є регулярною, але є такою мовою, як , де = кількість екземплярів підрядка "001" дорівнює кількості екземплярів підрядки " 100 " регулярно? Зауважте, що …

7
Чому індекси негативного масиву мають сенс?
Я натрапив на дивний досвід програмування на С. Розглянемо цей код: int main(){ int array1[6] = {0, 1, 2, 3, 4, 5}; int array2[6] = {6, 7, 8, 9, 10, 11}; printf("%d\n", array1[-1]); return 0; } Коли я компілюю та запускаю це, я не отримую жодних помилок чи попереджень. Як …

4
Самостійне вивчення інформатики
Я 16-річний чоловік, який нещодавно обдарував великою енциклопедією з інформатики моїм другом. Мене зазвичай не цікавлять комп’ютери та технології, але інформатика почала мене захоплювати. Я все ж маю намір вивчати фізику та / або математику, а не КС, тому моє запитання: чи було б корисним провести самостійне вивчення інформатики? Я, …

5
Причина вивчити логіку пропозицій та предикат
Я можу зрозуміти важливість того, що комп'ютерні вчені або будь-які інженери, пов'язані з розробкою програмного забезпечення, повинні розуміти вивчення основних логік як основу. Але чи є якісь завдання / завдання, які явно вимагають знань про них, крім завдань, які вимагають використання будь-якого виду знань Knowledge Base? Я хочу почути типи …
14 logic 

1
Монадичний логік другого порядку для чайників
Я програміст із захопленням на автоматах, але не на логіці. Я читав у документах, що вони дуже тісно пов'язані. Детерміновані кінцеві автомати (DFA), автомати дерев і автоматичні видимі поштовхи відносяться до Monadic логіки другого порядку (MSO). Хоча, я розумію, автомати і люди (в паперах) намагалися пояснити ставлення до МСО до …

3
Чи можна цей алгоритм вважати алгоритмом двійкового пошуку?
Виконуючи другу ката-код (яка просить вас впровадити алгоритм двійкового пошуку п'ять разів, кожен раз за допомогою іншого методу), я придумав дещо інше рішення, яке працює наступним чином: Якщо у мене буде відсортований масив довжиною 100, і я бачу, що його початкове поле містить число 200, а його кінцеве поле містить …


1
Що означає тильда в нотації big-O?
Я читаю статтю, і вона в своєму описі складності часу говорить, що складність у часі є .O~(22n)O~(22n)\tilde{O}(2^{2n}) Я шукав в Інтернеті та Вікіпедії, але не можу знайти те, що означає цей тильд у позначенні big-O / Landau. У самому документі я також не знайшов поняття про це. Що означає ?O~(⋅)O~(⋅)\tilde{O}(\cdot)

1
Заокруглення з плаваючою комою
Чи може число IEEE-754 з плаваючою точкою <1 (тобто генерується генератором випадкових чисел, що генерує число> = 0,0 та <1,0), коли-небудь можна помножити на деяке ціле число (у формі з плаваючою комою), щоб отримати число, рівне або більше, ніж це ціле число через округлення? тобто double r = random() ; …

1
Чи всі кримінальні дерева, що мають мінімальний MST, доступні за допомогою Крускала та Прима?
Я вважаю, що це правда, але не вдалося отримати жодного офіційного підтвердження. Але чи правда, що будь-яке дерево, що має мінімум, доступне за допомогою алгоритму Крускала? Аналогічно, це правда для алгоритму Прима? EDIT: Якщо точніше, я хочу знати, якщо дано MST для підключеного, непрямого, зваженого графіка, чи гарантується, що є …

2
Чи можна уникнути кроку "поділу" у вигляді злиття?
Отже сортування злиття - це алгоритм розділення та підкорення. Під час перегляду вищевказаної діаграми я думав, чи можна взагалі обійти всі етапи поділу. Якщо ви повторили початковий масив під час стрибків на два, ви можете отримати елементи в індексі i та i + 1 і помістити їх у власні відсортовані …

1
Машини з випадковим доступом лише з додаванням, множенням, рівністю
У літературі досить ясно, що оперативні пам’яті з одиничною вартістю з примітивним множенням є необґрунтованими, оскільки вони не може бути змодельована машинами Тьюрінга в поліноміальний час може вирішити повні проблеми PSPACE в поліноміальний час Однак усі посилання, які я можу знайти на цю тему (Simon 1974, Schonhage 1979), також включають …

3
Яка різниця між обчисленням і мовою програмування?
Я думаю, що я дуже розгублений щодо того, що називається обчисленням і що називається мовою програмування. Я схильний думати, і, можливо, сказали б, що обчислення є формальною системою для міркувань про еквівалентність програм. У програмах є оперативна семантика, визначена машиною, яка повинна (я думаю?) Бути детермінованою. Таким чином, (правильне) обчислення …

3
Що б ви отримали, якщо додати параметри до контекстних граматик?
Я думав про граматики для чутливих до індендації мов, і схоже, що граматики CF виконають трюк у поєднанні з параметрами. Як приклад, розглянемо цей фрагмент для спрощеної граматики Python у форматі, подібному до ANTLR: // on top-level the statements have empty indent program : statement('')+ ; // let's consider only …

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