Основы информатики: шпаргалка-пакет

Листы формул, ключевые шаги методов по каждой теме и тренировочные задачи (20) с полными решениями в конце.

Новые задачиНазад к курсу

В окне печати выберите «Сохранить как PDF», чтобы сохранить копию на своём устройстве.

1Формулы и методы

Системы счисления

Веса разрядов
двоичная 2k, восьмеричная 8k, шестнадцатеричная 16k
В десятичную
Σ dk·bk
Из десятичной
делите на основание, остатки читайте снизу вверх
Шестнадцатеричная ↔ двоичная
одна шестнадцатеричная цифра = 4 бита
Дополнительный код
инвертируйте биты и прибавьте 1

Логика высказываний и доказательства

Строки таблицы истинности
2ⁿ
Импликация
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
Отрицание импликации
¬(p → q) ≡ p ∧ ¬q
Эквиваленция
p ↔ q ≡ (p → q) ∧ (q → p)
Законы де Моргана
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
Законы дистрибутивности
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
Отрицание кванторов
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
Modus ponens, modus tollens
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

Метод

  1. Подсчитайте различные переменные: в таблице истинности 2ⁿ строк, и начинается она со строки, где все переменные равны 1.
  2. Отведите каждой подформуле отдельный столбец и заполняйте столбцы изнутри наружу.
  3. Применяйте правило каждой связки: → равно 0 только для 1 → 0, ↔ равно 1, когда обе части совпадают.
  4. Для эквивалентностей сравнивайте последние столбцы строка за строкой; для рассуждения смотрите только на строки, в которых все посылки равны 1.
  5. Чтобы отрицать высказывание с квантором, переносите ¬ внутрь, меняйте ∀ и ∃ местами и отрицайте внутреннюю формулу.

Цифровая логика: вентили, карты Карно и триггеры

Основные вентили
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Правила булевой алгебры
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
Законы де Моргана
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Порядок на карте Карно
00, 01, 11, 10 (Gray code)
Группа из 2ᵏ клеток
теряет k переменных
Мультиплексор 4 в 1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Триггеры
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Счётчики
n-разрядный: 2ⁿ состояний; по модулю N: наименьшее n, при котором 2ⁿ ≥ N; fout = fclk/N
Асинхронный счётчик
fmax = 1/(n·tpd)
Кольцевой счётчик и счётчик Джонсона
n и 2n состояний

Метод

  1. Для схемы идите от входов к выходу вентиль за вентилем и записывайте значение на каждом проводе или запишите её выражение и заполните таблицу истинности.
  2. Для упрощения поставьте единицы (и безразличные состояния как X) на карту Карно со строками и столбцами в коде Грея: 00, 01, 11, 10.
  3. Покройте единицы как можно меньшим числом как можно больших групп по 1, 2, 4, 8 или 16 клеток, с переходом через края; каждая группа — один член-произведение из переменных, которые остаются постоянными. Для формы POS группируйте нули.
  4. Для триггеров и счётчиков считывайте входы на каждом активном фронте тактового сигнала, записывайте состояние после каждого фронта и помните, что n-разрядный счётчик возвращается к началу после 2ⁿ состояний.

Теория чисел и модульная арифметика

Деление с остатком
a = q·n + r, 0 ≤ r < n
Евклид
gcd(a, b) = gcd(b, a mod b)
Наименьшее общее кратное
lcm(a, b) = a·b/gcd(a, b)
Обратная матрица
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
Линейное сравнение
a·x ≡ b → x ≡ a⁻¹·b (mod n)
Функция Эйлера
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
Ферма
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

Метод

  1. Сначала приведите каждое число по модулю n; остатки лежат от 0 до n − 1.
  2. Для НОД делите с остатком по алгоритму Евклида; последний ненулевой остаток и есть НОД.
  3. Для обратного элемента запустите расширенный алгоритм и возьмите коэффициент при a; если он отрицательный, прибавьте n.
  4. Решайте a·x ≡ b умножением на a⁻¹; два сравнения объединяйте, записывая x = r₁ + m₁k.
  5. Для степеней запишите показатель в двоичном виде и многократно возводите в квадрат; в RSA d = e⁻¹ mod φ(n), где φ(n) = (p − 1)(q − 1).

Теория графов

Лемма о рукопожатиях
Σ deg(v) = 2|E|
Полные графы
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
Регулярный граф
|E| = n·k/2
Дерево и лес
|E| = n − 1, |E| = n − c
Листья дерева
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
Эйлер
цикл: все степени чётные; путь: ровно две нечётные степени
Гамильтоновы циклы в Kn
(n − 1)!/2
Обновление в алгоритме Дейкстры
d(v) = min(d(v), d(u) + w(u, v))
Маршруты длины L
(Mᴸ)ij

Метод

  1. Запишите степень каждой вершины; сумма степеней равна удвоенному числу рёбер.
  2. В задачах об эйлеровых путях проверьте, что граф связный, и посчитайте вершины нечётной степени.
  3. Для деревьев используйте n − 1 ребро и лемму о рукопожатиях.
  4. В алгоритме Дейкстры ведите таблицу предварительных расстояний и на каждом шаге фиксируйте нефиксированную вершину с наименьшим расстоянием.
  5. Для минимального остовного дерева отсортируйте рёбра по весу и пропускайте каждое ребро, замыкающее цикл (Краскал), либо растите одно дерево из начальной вершины (Прим).

Подсети IPv4

Узлы в подсети
2(32 − prefix) − 2 (/31: 2, /32: 1)
Размер блока
256 − (mask octet)
Адрес сети
IP AND маска
Широковещательный адрес
IP OR (NOT маска): все биты узла равны 1
Подсети из n заимствованных битов
2n

2Тренировочные задачи

1.Системы счисленияСредняя
8-битный дополнительный код?−128?64?32?16?8?4?2?1

Запишите −38 как 8-битную комбинацию в дополнительном коде. Прочитайте комбинацию как беззнаковое двоичное число: каково его значение U в десятичной системе?

N = −388 bit
U =
2.Системы счисленияСложная
нажимайте на биты, чтобы установить их012806403201608040201

Установите биты в 8-битный результат операции 0100 0010 >> 2. Чему равно значение результата R в десятичной системе?

0100 0010>> 2
R =
3.Логика высказываний и доказательстваСредняя
pqrr ∧ q¬(¬p ∧ (q → p)) ↔ (r ∧ q)¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q))111?110?101?100?011?010?001?000?

В скольких из 8 строк таблицы истинности ¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q)) истинно? Обозначим это число N.

¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q))
N =
4.Логика высказываний и доказательстваСложная

В скольких из 16 строк таблицы истинности ((s → r) ∧ ¬p) ∨ ¬((¬q → s) ∨ (q ∨ r)) истинно? Обозначим это число N.

((s → r) ∧ ¬p) ∨ ¬((¬q → s) ∨ (q ∨ r))
N =
5.Цифровая логика: вентили, карты Карно и триггерыСредняя
ABCD000111100001111000111312140517161120131151141809011110

С помощью карты Карно найдите минимальную форму «произведение сумм» (POS) для F(A, B, C, D) = Σm(1, 2, 3, 4, 6, 7, 8, 10, 12, 14, 15). Сколько членов-сумм (множителей), N, в ней?

F(A, B, C, D) = Σm(1, 2, 3, 4, 6, 7, 8, 10, 12, 14, 15)
N =
6.Цифровая логика: вентили, карты Карно и триггерыСложная
DQ3​Q3​DQ2​Q2​DQ1​Q1​DQ0​Q0​CLKSHIFT

4-разрядный сдвиговый регистр Q₃Q₂Q₁Q₀ содержит 1110. По каждому фронту тактового сигнала биты сдвигаются на одну позицию вправо (Q₃ → Q₂ → Q₁ → Q₀, Q₀ теряется), а последовательный вход поступает в Q₃. Последовательный вход равен 1, 1, 1, 1, 0, 1, 0 на 7 фронтах. Укажите итоговое состояние Q = Q₃Q₂Q₁Q₀ в виде десятичного числа.

Q₃Q₂Q₁Q₀ = 11101, 1, 1, 1, 0, 1, 0
Q =
7.Теория чисел и модульная арифметикаСредняя

Найдите обратный к 70 по модулю 79: число x, для которого 0 < x < 79 и 70·x ≡ 1 (mod 79).

a = 70n = 79
70−1 mod 79 =
8.Теория чисел и модульная арифметикаСложная

11 — простое число. Используйте малую теорему Ферма, чтобы найти 284304 mod 11.

p = 11k = 4304
284304 mod 11 =
9.Алгоритмы и сложностьСредняя

Примерно сколько сравнений нужно бинарному поиску в худшем случае на отсортированном массиве из 1,000,000 элементов?

  1. AОколо 500,000
  2. BОколо 20
  3. CОколо 1,000
  4. DОколо 100
10.Алгоритмы и сложностьСложная

Какое утверждение о выборе k-го наименьшего элемента неотсортированного массива верно?

  1. AВыбор возможен только за O(n²)
  2. BВыбор всегда требует Ω(n log n), потому что нужна сортировка
  3. CQuickselect работает в среднем за O(n), а метод медианы медиан гарантирует O(n) в худшем случае
  4. DQuickselect работает за O(log n) в худшем случае, потому что рекурсия идёт только в одну сторону от опорного элемента
11.Структуры данныхСредняя

Какую структуру данных использует выполняющаяся программа для отслеживания активных вызовов функций и их локальных переменных?

  1. AДвоичное дерево поиска кадров
  2. BСтек вызовов
  3. CОчередь памяти кучи
  4. DХеш-таблицу функций
12.Структуры данныхСложная

Удаление узла с двумя потомками из двоичного дерева поиска обычно выполняют так:

  1. AУдаляют всё поддерево
  2. BМеняют его местами с корнем
  3. CЗаменяют его in-order преемником (или предшественником) и удаляют тот узел
  4. DПерестраивают поддерево под ним с нуля и заново вставляют каждый содержавшийся в нём ключ
13.Теория графовСредняя

Сколько различных гамильтоновых циклов, H, в полном графе K6? Циклы, отличающиеся только начальной вершиной или направлением, считаются одним и тем же.

K6
H =
14.Теория графовСложная
7205129101617ABCDEF

Алгоритм Краскала строит минимальное остовное дерево. Нажмите на ребро, которое он добавляет под номером 5; пропущенные рёбра не считаются.

k = 5
  1. 1ребро AB
  2. 2ребро AC
  3. 3ребро BD
  4. 4ребро CE
  5. 5ребро DE
  6. 6ребро DF
  7. 7ребро EF
  8. 8ребро BE
15.Базы данных и SQLСредняя

Третья нормальная форма (3NF) устраняет:

  1. AТранзитивные зависимости между неключевыми атрибутами
  2. BИзбыточные индексы по столбцам, не входящим в ключ
  3. CАтомарные значения
  4. DСоставные ключи
16.Базы данных и SQLСложная

В таблице миллион строк и логический столбец is_active, равный TRUE для 95% строк. Почему оптимизатор может игнорировать индекс по is_active для WHERE is_active = TRUE?

  1. AИндекс считает TRUE значением NULL
  2. BИндексы нельзя создавать по логическим столбцам
  3. CОптимизатор никогда не использует индексы в предложениях WHERE
  4. DПодходит большинство строк, поэтому полное сканирование таблицы дешевле множества обращений к индексу
17.Компьютерные сетиСредняя

Какое поле заголовка IPv4 не даёт пакетам бесконечно циркулировать в петле маршрутизации?

  1. AКонтрольная сумма заголовка
  2. BВремя жизни (TTL)
  3. CТип обслуживания
  4. DИдентификация
18.Компьютерные сетиСложная

У TCP-соединения окно 64 КБ, время приёма-передачи 100 мс и нет масштабирования окна. Какова его примерная максимальная пропускная способность?

  1. AОколо 640 Мбит/с
  2. BОколо 5 Мбит/с
  3. CОколо 0,5 Мбит/с
  4. DОколо 50 Мбит/с
19.Подсети IPv4Средняя
/24 → /2911111111111111111111111111111000биты сетибиты узла

Сеть 192.168.175.0/24 разделена на подсети /29, пронумерованные 1, 2, 3, … начиная с младшего адреса (подсеть 1 начинается с .0). Чему равен четвёртый октет x широковещательного адреса подсети 3?

192.168.175.0/24/29подсеть 3 (подсеть 1 начинается с .0)
x =
20.Подсети IPv4Сложная
третий октет = 171112806413201618041211сетьузел

Узел имеет адрес 172.20.171.159/22. Чему равен третий октет x широковещательного адреса его подсети?

172.20.171.159/22
x =

3Растворы

1.Системы счисления

Ответ: U = 218

Позиционные системы счисления: каждая цифра стоит своего значения, умноженного на степень основания. В двоичной системе разряды стоят 1, 2, 4, 8, 16, …, в шестнадцатеричной 1, 16, 256, …, а A–F обозначают 10–15. В 8-битном дополнительном коде крайний левый бит стоит −128 вместо +128; так хранятся отрицательные числа.

Инвертируйте и прибавьте единицу

38 = 0010 0110
инвертировано: 1101 1001
+1 → 1101 1010

Прочитайте как беззнаковое

1101 1010₂ = 256 − 38 = 218

Ответ

U = 218
2.Системы счисления

Ответ: R = 16

Установка битов: каждый бит стоит степень двойки (128, 64, …, 1). Одна шестнадцатеричная цифра — это ровно четыре бита, а в 8-битном дополнительном коде крайний левый бит стоит −128. Побитовые операции работают с каждой позицией бита отдельно.

Бит за битом

Сдвиг вправо на 2 перемещает каждый бит на 2 позиций вправо; биты, выходящие за правый край, теряются, а слева входят нули.

0100 0010 >> 2
= 0001 0000

Значение результата

0001 0000₂ = 16

Ответ

R = 16
3.Логика высказываний и доказательства

Ответ: N = 4

Таблицы истинности: у формулы с n различными переменными 2ⁿ строк, по одной для каждой комбинации значений истинности (1 = истина, 0 = ложь). Работайте изнутри наружу и отводите каждой подформуле отдельный столбец. ¬a меняет значение на противоположное; a ∧ b равно 1 только тогда, когда оба равны 1; a ∨ b равно 0 только тогда, когда оба равны 0; a → b равно 0 только при a = 1 и b = 0; a ↔ b равно 1, когда обе части равны.

Таблица истинности по строкам

p = 1, q = 1, r = 1: ¬p = 0, q → p = 1, ¬p ∧ (q → p) = 0, ¬(¬p ∧ (q → p)) = 1, r ∧ q = 1, ¬(¬p ∧ (q → p)) ↔ (r ∧ q) = 1, ¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q)) = 0
p = 1, q = 1, r = 0: ¬p = 0, q → p = 1, ¬p ∧ (q → p) = 0, ¬(¬p ∧ (q → p)) = 1, r ∧ q = 0, ¬(¬p ∧ (q → p)) ↔ (r ∧ q) = 0, ¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q)) = 1
p = 1, q = 0, r = 1: ¬p = 0, q → p = 1, ¬p ∧ (q → p) = 0, ¬(¬p ∧ (q → p)) = 1, r ∧ q = 0, ¬(¬p ∧ (q → p)) ↔ (r ∧ q) = 0, ¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q)) = 1
p = 1, q = 0, r = 0: ¬p = 0, q → p = 1, ¬p ∧ (q → p) = 0, ¬(¬p ∧ (q → p)) = 1, r ∧ q = 0, ¬(¬p ∧ (q → p)) ↔ (r ∧ q) = 0, ¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q)) = 1
p = 0, q = 1, r = 1: ¬p = 1, q → p = 0, ¬p ∧ (q → p) = 0, ¬(¬p ∧ (q → p)) = 1, r ∧ q = 1, ¬(¬p ∧ (q → p)) ↔ (r ∧ q) = 1, ¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q)) = 0
p = 0, q = 1, r = 0: ¬p = 1, q → p = 0, ¬p ∧ (q → p) = 0, ¬(¬p ∧ (q → p)) = 1, r ∧ q = 0, ¬(¬p ∧ (q → p)) ↔ (r ∧ q) = 0, ¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q)) = 1
p = 0, q = 0, r = 1: ¬p = 1, q → p = 1, ¬p ∧ (q → p) = 1, ¬(¬p ∧ (q → p)) = 0, r ∧ q = 0, ¬(¬p ∧ (q → p)) ↔ (r ∧ q) = 1, ¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q)) = 0
p = 0, q = 0, r = 0: ¬p = 1, q → p = 1, ¬p ∧ (q → p) = 1, ¬(¬p ∧ (q → p)) = 0, r ∧ q = 0, ¬(¬p ∧ (q → p)) ↔ (r ∧ q) = 1, ¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q)) = 0

Посчитайте строки со значением 1

¬(¬(¬p ∧ (q → p)) ↔ (r ∧ q)): 0, 1, 1, 1, 0, 1, 0, 0
N = 4

Ответ

N = 4
4.Логика высказываний и доказательства

Ответ: N = 7

Таблицы истинности: у формулы с n различными переменными 2ⁿ строк, по одной для каждой комбинации значений истинности (1 = истина, 0 = ложь). Работайте изнутри наружу и отводите каждой подформуле отдельный столбец. ¬a меняет значение на противоположное; a ∧ b равно 1 только тогда, когда оба равны 1; a ∨ b равно 0 только тогда, когда оба равны 0; a → b равно 0 только при a = 1 и b = 0; a ↔ b равно 1, когда обе части равны.

Столбцы

s → r; ¬p; (s → r) ∧ ¬p; ¬q; ¬q → s; q ∨ r; (¬q → s) ∨ (q ∨ r); ¬((¬q → s) ∨ (q ∨ r)); ((s → r) ∧ ¬p) ∨ ¬((¬q → s) ∨ (q ∨ r))

Разбиение по p

p = 1: 1
p = 0: 6
N = 1 + 6 = 7

Ответ

N = 7
5.Цифровая логика: вентили, карты Карно и триггеры

Ответ: N = 3

Карты Карно: клетки упорядочены по коду Грея (00, 01, 11, 10), поэтому соседние клетки, включая те, что через края, отличаются ровно одной переменной. Группируйте единицы в прямоугольники по 1, 2, 4, 8 или 16 клеток, как можно большие и в как можно меньшем числе, пока не будет покрыта каждая единица. Каждая группа — один член-произведение: переменные, которые внутри неё остаются постоянными. Группа из 2ᵏ клеток теряет k переменных. Безразличные состояния (X) можно использовать, чтобы увеличить группы, но покрывать их не обязательно. Если группировать нули, получится минимальная форма POS.

ABCD000111100001111000111312140517161120131151141809011110

Сгруппируйте нули

Каждая группа — прямоугольник из 2ᵏ клеток; клетки на краю соседствуют с клетками на противоположном краю.

(B′ + C + D′)
(A′ + B + D′)
(A + B + C + D)

Минимальная форма POS

F = (B′ + C + D′)(A′ + B + D′)(A + B + C + D)
N = 3

Ответ

N = 3
6.Цифровая логика: вентили, карты Карно и триггеры

Ответ: Q = 5

Триггеры и счётчики: триггер меняется только по активному фронту тактового сигнала. D копирует свой вход (Q⁺ = D); T переключается при T = 1; JK сохраняет состояние при 00, сбрасывает при 01, устанавливает при 10 и переключает при 11. n-разрядный двоичный счётчик имеет 2ⁿ состояний и считает по модулю 2ⁿ; счётчик по модулю N считает 0, 1, …, N − 1 и возвращается к 0, и ему нужно наименьшее число триггеров n, при котором 2ⁿ ≥ N. Каждый разряд асинхронного счётчика делит частоту пополам, поэтому последний выход счётчика по модулю N работает на частоте fclk/N. У счётчика Джонсона из n триггеров 2n состояний, у кольцевого счётчика n.

Состояние после каждого фронта

1110 → 1111 → 1111 → 1111 → 1111 → 0111 → 1011 → 0101

Десятичное значение

0101₂ = 5

Ответ

Q = 5
7.Теория чисел и модульная арифметика

Ответ: 70−1 mod 79 = 35

Обратные элементы и сравнения: у a есть обратный по модулю n ровно тогда, когда НОД(a, n) = 1. Расширенный алгоритм Евклида записывает 1 = s·n + t·a, откуда a⁻¹ ≡ t (mod n). Сравнение a·x ≡ b (mod n) при НОД(a, n) = 1 имеет решение x ≡ a⁻¹·b. Два сравнения x ≡ r₁ (mod m₁) и x ≡ r₂ (mod m₂) со взаимно простыми модулями имеют одно решение по модулю m₁·m₂ (китайская теорема об остатках). Функция Эйлера φ(n) считает числа от 1 до n, взаимно простые с n: φ(n) = n·∏(1 − 1/p).

Расширенный алгоритм Евклида

Каждый остаток r записывается как r ≡ t·70 (mod 79).

r = 79, t = 0
r = 70, q = 1, t = 1
r = 9, q = 7, t = −1
r = 7, q = 1, t = 8
r = 2, q = 3, t = −9
r = 1, q = 2, t = 35

Обратная матрица

1 ≡ 35·70 (mod 79)
x = 35
проверка: 70·35 = 2450 = 31·79 + 1

Ответ

70−1 mod 79 = 35
8.Теория чисел и модульная арифметика

Ответ: 284304 mod 11 = 9

Степени по модулю и RSA: вычисляйте aᵏ mod n многократным возведением в квадрат: запишите k в двоичном виде, возводите в квадрат, приводите по модулю после каждого шага и перемножайте те степени, чей бит равен 1. Ферма: aᵖ⁻¹ ≡ 1 (mod p) для простого p, не делящего a, поэтому показатель можно приводить по модулю p − 1. RSA: выберите простые p и q, n = p·q и φ(n) = (p − 1)(q − 1); открытый показатель e взаимно прост с φ(n), а закрытый показатель d = e⁻¹ mod φ(n). Шифруйте как c = mᵉ mod n и расшифровывайте как m = cᵈ mod n.

Приведите показатель

4304 mod 10 = 4
284304 ≡ 284 (mod 11)

Малая степень

284 mod 11 = 9

Ответ

284304 mod 11 = 9
9.Алгоритмы и сложность

Ответ: B · Около 20

Почему это ответ

220 ≈ 1,048,576, поэтому примерно после 20 делений пополам остаётся один элемент.

Ответ

B · Около 20
10.Алгоритмы и сложность

Ответ: C · Quickselect работает в среднем за O(n), а метод медианы медиан гарантирует O(n) в худшем случае

Почему это ответ

Ожидаемая работа quickselect со случайными опорными элементами n + n/2 + n/4 + ... = O(n); выбор опорного элемента как медианы медиан делает худший случай линейным.

Ответ

C · Quickselect работает в среднем за O(n), а метод медианы медиан гарантирует O(n) в худшем случае
11.Структуры данных

Ответ: B · Стек вызовов

Почему это ответ

Каждый вызов помещает в стек кадр (push), а каждый возврат его извлекает (pop), поэтому самый последний вызов завершается первым.

Ответ

B · Стек вызовов
12.Структуры данных

Ответ: C · Заменяют его in-order преемником (или предшественником) и удаляют тот узел

Почему это ответ

У in-order преемника не более одного потомка, поэтому его легко удалить, скопировав его ключ в удаляемый узел.

Ответ

C · Заменяют его in-order преемником (или предшественником) и удаляют тот узел
13.Теория графов

Ответ: H = 60

Эйлер, Гамильтон и деревья: связный граф имеет эйлеров цикл (каждое ребро один раз, с возвратом в начало), когда все вершины имеют чётную степень, и эйлеров путь, не являющийся циклом, когда ровно две вершины имеют нечётную степень; тогда путь идёт от одной нечётной вершины к другой. Гамильтонов цикл посещает каждую вершину один раз; в Kn их (n − 1)!/2. У дерева на n вершинах n − 1 ребро, а связный граф с m рёбрами сохраняет остовное дерево после удаления m − n + 1 рёбер.

Посчитайте

H = (6 − 1)!/2 = 120/2 = 60

Ответ

H = 60
14.Теория графов

Ответ: ребро CE

Кратчайшие пути и остовные деревья: алгоритм Дейкстры фиксирует по одной вершине на шаге: нефиксированную вершину с наименьшим предварительным расстоянием. Её расстояние становится окончательным, а каждый сосед v получает d(v) = min(d(v), d(u) + w(u, v)). Алгоритм Краскала строит минимальное остовное дерево, беря рёбра от лёгких к тяжёлым и пропуская любое ребро, которое замкнуло бы цикл; алгоритм Прима растит одно дерево из начальной вершины, всегда добавляя самое лёгкое ребро, выходящее из него. В остовном дереве на n вершинах n − 1 ребро.

Алгоритм Краскала

1. BD (5)
2. AB (7)
3. DE (9)
4. DF (10)
5. CE (12)

номер ребра 5

CE

Ответ

ребро CE
15.Базы данных и SQL

Ответ: A · Транзитивные зависимости между неключевыми атрибутами

Почему это ответ

В 3NF ни один неключевой атрибут не зависит от другого неключевого атрибута, как, например, при хранении города и почтового индекса, когда город зависит от индекса.

Ответ

A · Транзитивные зависимости между неключевыми атрибутами
16.Базы данных и SQL

Ответ: D · Подходит большинство строк, поэтому полное сканирование таблицы дешевле множества обращений к индексу

Почему это ответ

Индекс полезен, когда сужает поиск до немногих строк; когда подходит большинство строк, случайные обращения через индекс обходятся дороже последовательного чтения таблицы.

Ответ

D · Подходит большинство строк, поэтому полное сканирование таблицы дешевле множества обращений к индексу
17.Компьютерные сети

Ответ: B · Время жизни (TTL)

Почему это ответ

Каждый маршрутизатор уменьшает TTL; при нуле пакет отбрасывается и обычно отправляется сообщение ICMP Time Exceeded. В IPv6 это поле называется hop limit.

Ответ

B · Время жизни (TTL)
18.Компьютерные сети

Ответ: B · Около 5 Мбит/с

Почему это ответ

Пропускная способность ≤ окно / RTT = 65,536 × 8 бит / 0,1 с ≈ 5,2 Мбит/с, каким бы быстрым ни был канал.

Ответ

B · Около 5 Мбит/с
19.Подсети IPv4

Ответ: x = 23

IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).

Размер блока

23 = 8

Подсеть номер 3

сеть: (3 − 1)·8 = 16
широковещательный: 16 + 8 − 1 = 23

Ответ

x = 23
20.Подсети IPv4

Ответ: x = 171

IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).

Размер блока в третьем октете

22 = 4

Подсеть этого узла

сеть: 172.20.168.0
широковещательный: 172.20.171.255

Ответ

x = 171

ExamProblems · examproblems.com/courses/computer-science-fundamentals