- •Множество. Способы задания множеств (перечислением или списком, порождающей процедурой, описанием характеристического свойства). Привести примеры.
- •Алгебра множеств. Законы алгебры множеств. Доказать один из законов алгебры множеств.
- •Множество. Мощность множества. Нахождение мощности объединения множеств (для двух множеств, для трех множеств, для n-множеств). Привести пример.
- •Векторы. Прямое произведение множеств. Мощности прямого произведения множеств.
- •Отношения. Основные понятия отношений (отношения; унарные, бинарные, n-местные отношения)
- •Отношения. Бинарные отношения. Основные понятия (определение, обозначения, область определения, область значений, способы задания бинарных отношений). Привести примеры.
- •Отношения. Эквивалентность и порядок. Сравнимость элементов множества по отношению порядка.
- •Соответствия. Функции и отображения. Способы задания функций. Привести примеры.
- •Комбинаторика. Основные задачи комбинаторики. История возникновения комбинаторики.
- •Комбинаторика. Основные правила комбинаторики (правило суммы и правило произведения).
- •Комбинаторика. Упорядоченные и неупорядоченные выборки (множества). Понятие выборки (с повторением и без повторения, упорядоченные и неупорядоченные). Привести примеры.
- •Комбинаторика. Размещение без повторения. Перестановки без повторений. Размещение с повторениями. Привести примеры.
- •Комбинаторика. Сочетания без повторений и с повторениями. Свойства сочетаний. Доказать одно из них. Привести примеры.
- •Комбинаторика. Перестановки с повторениями. Циклические перестановки. Подсчет числа беспорядков. Привести примеры.
- •Комбинаторика. Формула включения-исключения.
- •Рекуррентные соотношения. Метод рекуррентных соотношений. Числа Фибоначчи (задача приводящая к числам Фибоначчи).
- •Рекуррентные соотношения. Порядок рекуррентного соотношения. Решение и общее решение рекуррентного соотношения. Привести примеры.
- •Рекуррентные соотношения. Линейные рекуррентные соотношения с постоянными коэффициентами. Два утверждения на которых основывается решение линейных рекуррентных соотношений.
- •Общее решение линейных рекуррентных соотношений второго порядка с постоянными коэффициентами (случай одинаковых корней характеристического уравнения). Привести примеры.
- •Общее решение линейных рекуррентных соотношений с постоянными коэффициентами, порядок которых выше второго. Привести примеры.
- •Решение рекуррентных соотношений, используя производящую функцию. Понятие производящей функции. Алгоритм решения рекуррентных соотношений с помощью производящих функций.
- •Булевы функции от одного аргумента. (Определение. Все булевы функции от одного аргумента).
- •Булевы функции от двух аргументов (Определение булевой функции двух аргументов, тождественный ноль, тождественная единица, конъюнкция, штрих Шеффера, дизъюнкция, стрелка Пирса (функция Вебба)).
- •Свойства дизъюнкции, конъюнкции и отрицания (теорема 4.3).
- •Свойства эквиваленции, импликации и отрицания (теорема 4.4).
- •Выражение одних булевых функций через другие (теорема 4.5).
- •Булевы функции от n аргументов (определение, равенство булевых функций, суперпозиция булевых функций).
- •Графы. Матричное задание графов. Матрица смежности, матрица инцидентности. Привести примеры.
- •Графы. Свойства матрицы смежности и инцидентности. Утверждение о числе всех путей (маршрутов) длины k из одной вершины в другую. Утверждение о наличие хотя бы одного контура.
- •Графы. Связность. Компоненты связности. (Достижимость вершины, связный (сильно связный орграф) граф, слабо связанный, несвязанный, компонента связности (сильной связности)). Привести примеры.
- •Графы. Матрицы связности. Утверждение о матрицах связности, матрицы достижимости, матрицы сильной связности.
- •Графы. Выделение компонент связности. Алгоритм нахождения числа компонент сильной связности и матрицы смежности этих компонент.
- •Графы. Поиск путей (маршрутов) с минимальным числом дуг (ребер). Алгоритм фронта волны.
- •Графы. Минимальные пути (маршруты) в нагруженных орграфах (графах). Алгоритм Форда-Беллмана.
- •Графы. Деревья и циклы.
- •Графы. Эйлеровы цепи и циклы.
Графы. Поиск путей (маршрутов) с минимальным числом дуг (ребер). Алгоритм фронта волны.
Пусть задан ориентированный граф G(V, X).
Путь из vi в vj называется кратчайшим, если он содержит наименьшее число дуг по сравнению со всеми другими путями из vi в vj.
Будем искать кратчайший путь из вершины vi в vj.
1). Пометим вершину vi индексом "0". Она принадлежит фронту волны нулевого уровня W0(vi).
2). Рассмотрим образы вершины vi: Гvi. Пометим их индексом "1". Они принадлежат фронту волны первого уровня: W1(vi).
k). Рассмотрим образы всех вершин k-1ого уровня фронта волны: Г(Wk-1(vi)). Пометим непомеченные ранее вершины индексом k. Получим Wk(vi). Если через n-1 шагов мы не получим ни одном из множеств W1(vi),..., Wn-1(vi) вершины vj, то пути из vi в vj не существует.
Если на некотором шаге мы получили vjОWk(vi), то процесс окончен.
Пусть кротчайший путь содержит следующие вершины: vi " v(1) " v(2) " ..." v(k-1) " vj. Найдём номера вершин v(1),..., v(k-1):
v(k-1) О Wk-1(vi)ЗГ-1vj;
v(k-2) О Wk-2(vi)ЗГ-1v(k-1);
...
v(1) О W1(vi)ЗГ-1v(2);
Путей может быть несколько.
Графы. Минимальные пути (маршруты) в нагруженных орграфах (графах). Алгоритм Форда-Беллмана.
Алгоритм Форда-Беллмана нахождения минимального пути в нагруженном ориентированном графе D из vнач в vкон.( vнач ≠ vкон)
записываем в виде матрицы, i- строка, k-столбец.
1)Составляем таблицу , i=1,…,n, k=0,…,n-1. Если , то пути из vнач в vкон нет. Конец алгоритма.
2)Если то это число выражает длину любого минимального пути из vнач в vкон. Найдем минимальное k1³1, при котором . По определению получим, что k1- минимальное число дуг в пути среди всех минимальных путей из vнач в vкон.
3)Затем определяем номера i2,…, такие, что
,
,
,
то есть, восстанавливаем по составленной таблице и матрице стоимости искомый минимальный путь из vнач в vкон.
Графы. Деревья и циклы.
Граф G называется деревом, если он является связным и не имеет циклов. Граф G, все компоненты связности которого являются деревьями, называется лесом.
У графа, который является деревом, число ребер на единицу меньше числа вершин. Дерево не содержит циклов, любые две его вершины можно соеденить единственной простой цепью.
Если у дерева G есть, по крайней мере, одно ребро, то у него обязательно найдется висячая вершина, т.к. в противном случае в графе будет цикл.
Для графов, которые сами по себе не являются деревьями, вводится понятие остовного дерева.
Определение. Остовным деревом связного графа G называется любой его подграф, содержащий все вершины графа G и являющийся деревом.
Пусть G – связный граф. Тогда остовное дерево графа G (если оно существует) должно содержать n(G)-1 ребер.
Таким образом, любое остовное дерево графа G есть результат удаления из графа G ровно m(G) - (n(G) - 1) = m(G) – n(G) + 1 ребер.
Число v(G) = m(G) – n(G) + 1 называется цикломатическим числом связного графа G.
Графы. Эйлеровы цепи и циклы.
Цепь (цикл) в G называется эйлеровой (эйлеровым), если она (он) проходит по одному разу через каждое ребро псевдографа G.
Граф является эйлеровым, если он содержит эйлеров цикл.
Рассмотрим вопрос о наличии эйлеровой цепи и цикла в псевдографе.
Теорема. Связный граф является эйлеровым тогда и только тогда, когда каждая вершина имеет четную локальную степень.
Теорема. Связный граф содержит эйлерову цепь тогда и только тогда, когда ровно две вершины имеют нечетную локальную степень.