2.3.1. Понятие свертки
Определение. Пусть даны два массива:
a = (…,a-1, a0, a1, a2, …), b = (…,b-1 ,b0,b1, b2, …) – конечные или бесконечные в одну или в обе стороны. Тогда сверткой последовательности a и b называется массив
c = (.., c-1, c0, c1, c2, …), где (2.5a)
т.е. суммирование производится по всевозможным сочетаниям, в которых k + l = i. Обозначается свёртка как: c = a*b.
В случае, когда последовательности (массивы) a и b бесконечны в обе стороны, выражение для ci можно представить в виде
(2.5б)
Аналогичным образом определяется свертка для конечных массивов (в формулу (2.5.б) подставляются конечные пределы суммирования).
Пример. Даны два массива:
a = (a0, a1);
b = (b0, b1, b2).
Определим свёртку этих массивов , используя формулу (2.5а):
c0 = a0b0,
c1 = a0b1 + a1b0,
c2 = a1b + a0b2,
c3 = a1b2.
Рассмотрим классический пример свёртки.
При умножении многочленов:
a(x) = a0 + a1x + … + an-1 xn-1,
bx) = b0 + b1x + … + bn-1- xn-1.
a(x)*b(x) = c(x) = c0 + c1x1 + … + c2n-2 x2n – 2,
c = a*b.
При перемножении числе столбиком (если не делать переносы в старшие разряды).
Пусть a и b – дискретные независимые случайные величины, такие что P(a = i) = ai, P(b = i) = bi. Причем a и b – обязательно независимые случайные величины (независимые случайные величины – те, для которых справедливо высказывание: P((xA) и (y B)) = P(xA) · P(y B), где x, y – значения случайных величин, А и В – некоторые множества из области значений соответствующих случайных величин).
Тогда, случайная величина c = a + b имеет распределение, которое есть ни что иное, как всёртка массивов ai и bi.
.
- Основные понятия. Справочный материал
- Основные понятия
- 1.2. Справочный материал. Сравнение скорости роста основных функций
- 2 Новые быстрые версии старых алгоритмов
- 2.1. Сортировки массивов
- 2.1.1 Метод прямого выбора (SelectSort)
- 2.1.2 Быстрая сортировка методом двоичных вставок (MergeSort)
- 2.2. Преобразование Фурье (бпф)
- 2.2.1. Дискретное преобразование Фурье
- 2.2.2. Полубыстрое преобразование Фурье (ппф)
- 2.2.3. Быстрое преобразование Фурье (бпф)
- 2.3. Быстрая свертка
- 2.3.1. Понятие свертки
- 2.3.2. Обычный и быстрый алгоритм свертки
- 2.4. Быстрое умножение
- 2.4.1. Быстрое умножение чисел
- 1 Суммирование
- 4 Произведения чисел вдвое меньшей
- 2.4.2. Быстрое умножение матриц
- 2.4.3. Очень быстрое умножение числе (алгоритм Шенхаге – Штрассена)
- 3. Задачи на графах
- 3.1. Справочный материал
- 3.2. Поиск минимального остова в связном неориентированном взвешенном графе
- 3.3. Нахождение кратчайшего расстояния
- 3.3.1. Алгоритм Форда – Беллмана
- 3.3.2. Алгоритм Дейкстры
- 3.4. Нахождение диаметра, радиуса и центра графа
- 3.5. Задача об изоморфизме графов
- 3.6. Задача коммивояжера. Её решение методом ветвей и границ.
- Задачи динамического программирования
- Задачи динамического программирования. Её решение методом динамического программирования.
- 4.2. Задача об оптимальном наборе самолетом скорости и высоты
- 4.3. Задача грабителя (задача о рюкзаке)
- 4.4. Задача о перемножении матриц
- 5 Классы p и np
- 5.1 Машина Тьюринга
- 5.2 Недетерменированные машины Тьюринга(ндмт)
- 5.3 Сводимость. Np-полнота.
- 5.4 Иерархия по сложности. Труднорешаемые задачи.
- Классы сложности.
- 6 Неразрешимые задачи
- 6.1 Новая модель алгоритма вычислений.
- 6.2 Нумерация программ
- 6.3 Неразрешимые проблемы
- 6.4 Теорема об ускорении
- Лабораторные работы
- Расчетно-графическое задание
- Ответы к домашним заданиям