Общий тест по Computer Science — вопросы

Материал из DISCOPAL
Перейти к: навигация, поиск
12345678910
Общий тест по Computer Science

Вариант 3549617533.


Ваше имя*:


Вопрос 1

Теоретически возможно реализовать любую комбинаторную логику используя только «NAND» или «NOR» узлы. Какие плюсы наличия более широкого класса логических вентилей при проектировании? Рассмотрим гипотезы:

I
Дизайн схемы, включающей вентили «AND», «NAND», «OR» и «XOR», «NOT», почти во всех случаях можно реализовать меньшим числом компонент.
II
Чем шире набор булевых операций, тем проще при проектировании получаются представления булевых выражений.
III
Проектировщик избавляется от необходимости использовать диаграммы Карно.
  1.  Только I
  2.  Ничего не верно
  3.  Только II
  4.  I, II, III
  5.  I, II

Вопрос 2

Какое из бинарных деревьев обеспечит быстрейший поиск элемента «2»?

  1.  [svg]
  2.  [svg]
  3.  Нет правильного варианта.
  4.  [svg]
  5.  [svg]

Вопрос 3

Строгий анализ некоторого алгоритма, обнаружил, что как только размер входа превосходит некоторую константу M, время выполнения алгоритма, T(n), становится не больше, чем куб от длины входа умноженный на константу, что для всех входов длины n

Рассмотрим утверждения:

I
Константы M и С — свидетели факта, что
II
Для некоторого входа длины n, время выполнения будет одним и тем же на любом компьютере.
III
Если для некоторых n, , мы тем не менее, можем утверждать, что , только надо будет найти новые значения M и С, для этих n.
  1.  I + II + III
  2.  Только II
  3.  Только II + III
  4.  Только I
  5.  Только I + II

Вопрос 4

Проведем BFS-поиск (поиск в ширину), кратчайшего пути из A в Z:

[svg]

В каком порядке алгоритм посетит вершины?

  1.  A → C → B → D
  2.  A → C → D → F
  3.  A → C → E → B
  4.  A → C → F → D → E
  5.  A → C → F → E → B

Вопрос 5

Рассмотрим контекстно-свободную грамматику:

 S → AB
 A → 1 | B1B
 B → 00A

Какую строку она может породить?

  1.  0111
  2.  Ничего из перечисленного
  3.  0110
  4.  1001
  5.  11011110

Вопрос 6

Рассмотрим фрагмент программы на C:

int fibo (int n)
{
   if (n<2)
      return n;
   else
      return fibo(n-1)+fibo(n-2);
}

Чтобы найти время выполнения T(n) для «fibo», предположим, что для некоторых констант a и b

  • T(0) = T(1) = a → т.к. положительная ветка ветвления в функции занимает констатное время.
  • T(2) = b +2a → т.е. негативная ветка в ветвлении занимает некую константу, плюс два рекурсивных вызова.

Следующим шагом, определим рекуррентное соотношение, которое, если решить, будет определять время работы T(n) через константы a и b. Выберите правильное.

  1.  


  2.  


  3.  


  4.  




  5.  



Вопрос 7

Рассмотрим программу на C++:

#include <stdio.h>
 
int void main()
{
   int j=0, k=0;
   f(j);
   cout << j + k; 
}
 
void f (int& i)
{
   k = i + 3;
   i = k * i;
}

Напомним, что в C/C++, «int& i» — означает передачу целого параметра по ссылке.

Какое значение выведет программа?

  1.  Не скомпилируется
  2.  0
  3.  1
  4.  4
  5.  12
  6.  3

Вопрос 8

Рассмотрим алгоритмы-политики планировщика процессов:

I
First-come-first-serve *FCFS)
II
Политика «старения» — приоритет процесса растет с временем
III
Round-robin

Какие предотвращают «ресурсное голодание»?

  1.  Никакие
  2.  Только II и III
  3.  Только II
  4.  Только I
  5.  Только I и II
  6.  I, II и III

Вопрос 9

Рассмотрим дерево: [svg]

Что нельзя о нем сказать?

  1.  Его можно обойти прямым и обратным обходом
  2.  Это бинарное дерево
  3.  У дерева есть корень
  4.  Его высота — 2

Вопрос 10

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

GRE-CS-v01 2019-04-10 23-20-01 image0.png

Что неверно?

  1.  1011101 — принимается, а и выводится 1110110.
  2.  Принимаются входы 000101 и 10101.
  3.  Есть как минимум два принимаемых входа, которые на выходе выведут одно и то же → 11110
  4.  Все, что кончается на 101 — принимается.
  5.  1011101 — принимается