Информатика

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

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 лет, и мой друг недавно подарил мне большую энциклопедию по информатике. Я обычно не очень интересуюсь компьютерами и технологиями, но компьютерные науки начали очаровывать меня. Однако я собираюсь изучать физику и / или математику, а не CS, поэтому мой вопрос: было бы полезно провести самостоятельное изучение информатики? Я, …

5
Причина для изучения логики высказываний и предикатов
Я могу понять важность того, что компьютерные ученые или любые инженеры, связанные с разработкой программного обеспечения, должны были понимать основы логики как основу. Но есть ли какие-либо задачи / задания, которые явно требуют знания об этом, кроме задач, которые требуют какого-либо представления знаний с использованием Knowledge Base? Я хочу услышать …
14 logic 

1
Монадическая логика второго порядка для чайников
Я программист с автоматом, но не с логикой. Я читал в газетах, что они очень тесно связаны. Детерминированные конечные автоматы (DFA), древовидные автоматы и автоматы видимого нажатия - все они связаны с монадической логикой второго порядка (MSO). Хотя, я понимаю, что автоматы и люди (в статьях) пытались объяснить мне отношение …

3
Можно ли считать этот алгоритм алгоритмом бинарного поиска?
Выполняя второе кодовое ката (которое просит вас реализовать алгоритм двоичного поиска пять раз, каждый раз с другим методом), я придумал немного другое решение, которое работает следующим образом: Если у меня есть отсортированный массив длины 100, и я вижу, что его начальное поле содержит число 200, а его конечное поле содержит …


1
Что означает тильда в нотации big-O?
Я читаю статью, и в своем описании сложности времени говорится, что сложность времени равна .О~( 22 н)O~(22n)\tilde{O}(2^{2n}) Я искал в интернете и википедии, но я не могу найти, что означает эта тильда в нотации big-O / Landau. В самой газете я также не нашел никаких подсказок по этому поводу. Что …

1
Округление с плавающей точкой
Может ли число с плавающей запятой IEEE-754 <1 (т. Е. Созданное с помощью генератора случайных чисел, который генерирует число> = 0,0 и <1,0) когда-либо умножаться на некоторое целое число (в форме с плавающей запятой), чтобы получить число, равное или большее, чем что целое число из-за округления? т.е. double r = …

1
Все ли минимальные остовные деревья MST достижимы для Крускала и Прима?
Я верю, что это правда, но не смог получить формальное доказательство ни того, ни другого. Но правда ли, что любое минимальное остовное дерево достижимо с помощью алгоритма Крускала? Точно так же это верно для алгоритма Прима? РЕДАКТИРОВАТЬ: Чтобы быть более точным, я хочу знать, если дан 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 one …


1
Поиск оптимальной последовательности вопросов, чтобы минимизировать общее время студента
Предположим, в университете есть учебная сессия. У нас есть набор из вопросов и набор из студентов . Каждый студент имеет сомнение в определенной подгруппе вопросов, то есть для каждого студента , пусть множество вопросов , которые студент имеет сомнение. Предположим , что и .Q = { q 1 … q …

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