Информатика

Q & A для студентов, исследователей и практиков информатики

5
Что значит быть полным по Тьюрингу?
Я вижу, что большинство определений того, что должно быть полным по Тьюрингу, в некоторой степени тавтологично. Например, если вы Google «что значит быть полным по Тьюрингу», вы получите: Компьютер завершается по Тьюрингу, если он может решить любую проблему, которую может выполнить машина Тьюринга ... Хотя очень четко определено, являются ли …

4
Есть ли проблемы NP, не в P и не в NP Complete?
Есть ли известные проблемы в (а не в P ), которые не являются N P Complete? Насколько я понимаю, в настоящее время нет известных проблем, когда это так, но это не исключено как возможность. NPNп\mathsf{NP}Pп\mathsf{P}NPNп\mathsf{NP} Если есть проблема , которая является (а не Р ) , но не Н Р …

2
Есть ли разница между динамическим программированием сверху вниз и снизу вверх?
Есть ли принципиальная разница между динамическим программированием сверху вниз и снизу вверх? В частности, существует ли проблема, которую можно решить снизу вверх, но не сверху вниз? Или подход снизу вверх просто раскручивает повторение подхода сверху вниз?

2
на «О жестокости по-настоящему преподавания информатики»
Дейкстра в своем эссе « О жестокости реального обучения информатике» предлагает следующее предложение для вводного курса по программированию: С одной стороны, мы учим тому, что похоже на исчисление предикатов, но делаем это совсем не так, как философы. Чтобы обучить начинающего программиста манипулированию неинтерпретируемыми формулами, мы учим его больше как булевой …

2
В чем разница между потоками уровня пользователя и потоками уровня ядра?
Прочитав несколько источников, я все еще не понимаю, какие темы нужны пользователям и ядру. Особенно: Потоки могут существовать как на уровне пользователя, так и на уровне ядра. В чем разница между уровнем пользователя и уровнем ядра?

2
Насколько асимптотически плохо наивные тасовки?
Хорошо известно, что этот «наивный» алгоритм перестановки массива путем замены каждого элемента на другой, случайно выбранный, не работает правильно: for (i=0..n-1) swap(A[i], A[random(n)]); В частности, поскольку на каждой из итераций делается один из вариантов (с одинаковой вероятностью), существует возможных «путей» в вычислениях; потому что количество возможных перестановокне делится равномерно на …

2
Есть ли улучшения в алгоритме Даны Англюин для изучения регулярных наборов
В своей основополагающей работе 1987 года Дана Англуин представляет алгоритм полиномиального времени для изучения DFA из запросов членства и теоретических запросов (контрпримеры к предлагаемому DFA). Она показывает, что если вы пытаетесь выучить минимальный DFA с состояниями, а ваш самый большой контрпример имеет длину , то вам нужно выполнить членских запросов …

1
Трудно ли NP заполнять мусорные ведра с минимальными ходами?
Есть бункеров и типов шаров. У го бина есть метки для , это ожидаемое количество шаров типа .nnnmmmiiiai,jai,ja_{i,j}1≤j≤m1≤j≤m1\leq j\leq mjjj Вы начинаете с шариков типа . Каждый шар типа имеет вес и хочет поместить шары в контейнеры так, чтобы имела вес . Распределение шаров, удовлетворяющее предыдущему условию, называется выполнимым решением.bjbjb_jjjjjjjwjwjw_jiiicicic_i …

4
В чем именно семантическая разница между множеством и типом?
РЕДАКТИРОВАТЬ: я теперь задавал аналогичный вопрос о разнице между категориями и сетами. Каждый раз, когда я читаю о теории типов (которая, по общему признанию, довольно неформальна), я не могу понять, чем она конкретно отличается от теории множеств . Я понимаю, что существует концептуальная разница между высказыванием «x принадлежит множеству X» …
33 type-theory  sets 

2
Плоские регулярные языки
В моем классе студент спросил, можно ли нарисовать все конечные автоматы без пересекающихся граней (кажется, все мои примеры это делали). Конечно, ответ отрицательный, очевидный автомат для языка имеет структуру , полный граф на пяти узлах , Юваль показал похожую структуру для родственного языка.{x ∈ { a , b }*∣ #a( …

4
Как O и Ω относятся к худшему и лучшему случаям?
Сегодня в лекции мы обсудили очень простой алгоритм поиска элемента в отсортированном массиве с использованием бинарного поиска . Нас попросили определить его асимптотическую сложность для массива из элементов.nnn Моя идея заключалась в том, что это явно или чтобы быть более конкретным, потому что - это число операций в худшем случае. …

4
Что такое динамическое программирование?
Извините заранее, если этот вопрос звучит глупо ... Насколько я знаю, построение алгоритма с использованием динамического программирования работает следующим образом: выразить проблему как рекуррентное отношение; Реализуйте рекуррентную связь либо через памятку, либо через восходящий подход. Насколько я знаю, я сказал все о динамическом программировании. Я имею в виду: динамическое программирование …

3
Повлияет ли аппаратное обеспечение / реализация на временную / пространственную сложность алгоритмов?
Я даже не студент CS, так что это может быть глупым вопросом, но, пожалуйста, потерпите меня ... В до-компьютерную эпоху мы можем реализовать структуру данных массива только с чем-то вроде массива ящиков. Так как перед извлечением значения из него нужно найти ящик с соответствующим индексом, временная сложность поиска в массиве …

5
Могут ли обычные языки быть завершенными по Тьюрингу?
Я читал о Йоте и Джоте и нашел этот раздел запутанным: В отличие от Iota, где синтаксическое дерево для строки может разветвляться либо слева, либо справа, синтаксис Jot равномерно разветвляется слева. В результате, Йота не зависит от контекста, но Йот - это обычный язык. Насколько я понимаю, и Йота, и …


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