Информатика

21
Все ли типы данных сводятся к узлам с указателями?

Массив или вектор - это просто последовательность значений. Они, безусловно, могут быть реализованы с помощью связанного списка. Это просто набор узлов с указателями на следующий узел. Стеки и очереди - это два абстрактных типа данных, которые обычно преподаются на курсах Intro CS. Где-то в классе...

21
Почему добавление вероятностей журнала быстрее, чем умножение вероятностей?

Чтобы сформулировать вопрос, в информатике часто мы хотим вычислить произведение нескольких вероятностей: P(A,B,C) = P(A) * P(B) * P(C) Самый простой подход - просто умножить эти числа, и это то, что я собирался сделать. Однако мой начальник сказал, что лучше добавить журнал вероятностей:...

21
за время O (n): найти наибольший элемент в наборе, где сравнение не транзитивно

Название устанавливает вопрос. В качестве входных данных у нас есть список элементов, которые мы можем сравнить (определить, какой из них больше ). Ни один элемент не может быть равным. Ключевые моменты: Сравнение не является транзитивным (подумайте о бумажных ножницах): это может быть правдой:...

21
Как можно проверить задачу коммивояжера за полиномиальное время?

Так что я понимаю идею, что решение проблемы определяется как Есть ли путь P такой, что стоимость ниже, чем C? и вы можете легко проверить это, проверив полученный вами путь. Однако что, если нет пути, который соответствует этим критериям? Как бы вы проверили ответ «нет», не решив проблему TSP с...

21
Как на самом деле выглядит машинный код во время работы?

Когда машинный код фактически выполняется аппаратным обеспечением и процессором, как он выглядит? Будет ли он выглядеть как двоичный, как в инструкциях, представляемых единицами и нулями, или это будет нечто, состоящее из шестнадцатеричных цифр, где коды операций - это байты, представленные в виде...

21
Почему этот код уникально декодируется?

Исходный алфавит: { а , б , в , д, е , е}{a,b,c,d,e,f}\{a, b, c, d, e, f\} Кодовый алфавит: { 0 , 1 }{0,1}\{0, 1\} а : 0101a:0101a\colon 0101 б : 1001b:1001b\colon 1001 с : 10c:10c\colon 10 d: 000d:000d\colon 000 е : 11e:11e\colon 11 е: 100f:100f\colon 100 Я думал, что для того, чтобы код был...

20
Расширение захвата SQL

По словам Иммермана , класс сложности, связанный с запросами SQL, - это в точности класс безопасных запросов в (запросы первого порядка плюс оператор подсчета): SQL захватывает безопасные запросы. (Другими словами, все запросы SQL имеют сложность в , и все проблемы в могут быть выражены как запрос...

20
Эквивалентность определений Колмогорова-Сложности

Есть много способов определить сложность Колмогорова , и обычно все эти определения они эквивалентны с точностью до аддитивной постоянной. То есть, если K1K1K_1 и K2K2K_2 являются функциями сложности Колмогорова (определяемыми через разные языки или модели), то существует постоянная ccc такая, что...

20
Соотношение разрешимых проблем

Рассмотрим проблемы решения, изложенные на каком-то «разумном» формальном языке Скажем, формулы в арифметике Пеано высшего порядка с одной свободной переменной в качестве системы отсчета, но я в равной степени заинтересован и в других моделях вычислений: диофантовых уравнениях, словесных задачах...

20
Эффективное сжатие немеченых деревьев

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

20
Реализация алгоритма GSAT - Как выбрать, какой литерал переворачивать?

Алгоритм GSAT по большей части прост: вы получаете формулу в соединительной нормальной форме и переворачиваете литералы предложений до тех пор, пока не найдете решение, удовлетворяющее формуле, или не достигнете предела max_tries / max_flips и не найдете решения. Я реализую следующий алгоритм:...

20
Разбор произвольных контекстно-свободных грамматик, в основном коротких фрагментов

Я хочу разобрать определенные пользователем доменные языки. Эти языки обычно близки к математическим обозначениям (я не разбираю естественный язык). Пользователи определяют свои DSL в нотации BNF, например так: expr ::= LiteralInteger | ( expr ) | expr + expr | expr * expr Подобные входные данные 1...

20
Могут ли современные массивные параллельные процессоры эффективно управлять клеточными автоматами?

Интересно, достаточно ли хороши массивно-параллельные вычислительные блоки, предоставляемые в настоящее время в графических картах (например, программируемые в OpenCL ), чтобы эффективно моделировать одномерные клеточные автоматы (или, может быть, двумерные клеточные автоматы?). Если мы выберем...

20
Почему шифрование одной и той же одноразовой клавиатурой не очень хорошо?

Чтобы зашифровать сообщение с помощью ключа одноразовой клавиатуры k , выполните E n c ( m 1 , k ) = m 1 ⊕ k .м1m1m_1КkkЕn c ( м1, к ) = м1⊕ кEnc(m1,k)=m1⊕kEnc(m_1,k) = m_1 \oplus k Если вы используете одно и то же для шифрования другого сообщения m 2, вы получите E n c ( m 2 , k ) = m 2 ⊕ k , а...

20
Путь к формальным методам

Нередки случаи, когда студенты начинают свои кандидатские диссертации с ограниченным опытом в математике и формальных аспектах информатики. Очевидно, что таким студентам будет очень трудно стать теоретиками компьютерных наук, но было бы хорошо, если бы они научились использовать формальные методы и...

20
Когда две симуляции не являются бисимуляцией?

Для заданной помеченной системы переходов , где - набор состояний, - набор меток, а - троичное отношение. Как обычно, напишите для . Помеченный переход обозначает, что система в состоянии меняет состояние на с меткой , что означает, что - это некоторое наблюдаемое действие, вызывающее изменение...

20
Создание самостоятельного бинарного дерева

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

20
Измерение односторонней задержки сети

Это головоломка об измерении задержки в сети, которую я создал. Я считаю, что решение состоит в том, что это невозможно, но друзья не согласны. Я ищу убедительные объяснения в любом случае. (Хотя это и представляется загадкой, я думаю, что он подходит на этом веб-сайте из-за его применимости к...

20
У каждой достаточно большой строки есть повторы?

Пусть - некоторый конечный набор символов фиксированного размера. Пусть α некоторая строка над Σ . Мы говорим, что непустая подстрока β в α является повторением, если β = γ γ для некоторой строки γ .ΣΣ\Sigmaαα\alphaΣΣ\Sigmaββ\betaαα\alphaβ=γγβ=γγ\beta = \gamma \gammaγγ\gamma Теперь мой вопрос...