
- •Дерева. Означення та основні властивості.
- •Кореневе дерево. Упорядковане кореневе дерево, m-арне дерево, повне m-арне дерево.
- •Властивості повного m-арного дерева. Рівень вершини і висота кореневого дерева. Збалансоване дерево.
- •Обхід бінарних дерев (три способи).
- •6.Інфіксна форма запису.
- •7. Префіксна форма запису виразів (прямий польський запис).
- •8. Постфіксна форма запису виразів. (обернений польський запис).
- •9. Бінарне дерево пошуку.
- •10. Дерево прийняття рішень.
- •11. Алгоритм бектрекінг. Приклади: пошук гамільтонових циклів у графі, задача про n ферзів та інші задачі.
- •12. Каркаси графів. Способи їх побудови.
- •13. Задача про мінімальний каркас. Алгоритм Краскала.
- •14. Відношення. Означення відношення із однієї множини в іншу, n-арні відношення. Означення відношення на множині. Бінарні відношення. Властивості відношень. Способи задання бінарних відношень.
- •15. Відношення еквівалентності.
- •16. Відношення часткового порядку.
- •17. Рефлексивне замикання відношення. Симетричне замикання відношення.
- •18. Транзитивне замикання відношення. З’єднувальне відношення.
- •19. Алгоритм Уоршала.
- •20. Постановка проблеми кодування, її значення в інформатиці. Алфавітне і рівномірне кодування. Достатні умови однозначності алфавітного кодування.
- •21. Властивості однозначного алфавітного кодування. Нерівність Крафта-Макміллана.
- •22. Задача оптимального кодування. Метод Фано побудови «економних» кодів.
- •23. Метод Хаффмана побудови оптимального коду.
- •24. Коди, стійкі до перешкод. Загальна теорія.
- •25. Коди, стійкі до перешкод: коди Хемінга.
- •26. Булеві функції. Означення, задання таблицями і формулами, істотні і неістотні змінні.
- •27. Диз’юктивні нормальні форми.
- •28. Кон'юктивні нормальні форми.
- •29. Поліном Жегалкіна
- •30. Алгебри булевих функцій
- •31. Алгебра Жегалкіна
- •35. Клас l. Лема про нелінійну функцію.
- •36. Теорема Поста.
- •37. Постановка задачі мінімізації булевих функцій.
- •38. Методи Квайна та Мак-Класкі.
- •39. Імплікантна таблиці Квайна. Метод Петрика відбору тупікових днф.
- •40. Граматики з фразовою структурою.
- •42. Скінченні автомати з виходом. Способи задання, приклади.
- •43. Скінченні автомати без виходу. Способі задання приклади.
- •44. Машина Тьюрінга.
23. Метод Хаффмана побудови оптимального коду.
Метод побудови оптимальної схеми алфавітного кодування. Спочатку здійснюють послідовні стиснення алфавіту А до отримання алфавіту із двох букв, оптимальна схема кодування для якого очевидна: першу букву кодують символом 0, другу – символом 1, після цього використовують послідовні розщеплення отриманої схеми. Очевидно, що отримана схема є префіксною. Описаний метод кодування запропоновано 1532 року американським математиком Хаффманом і названий його ім’ям.
Ґрунтуючись на алгоритмі Хаффмана, можна безпосередньо побудувати кодове дерево оптимального коду. Це дерево називають деревом Хаффмана.
За алгоритмом Хаффмана бінарне дерево, яке відповідає оптимальному коду, будують знизу вверх, починаючи з |А|=r листків, у цьому разі виконують (r-1) злиття. Злиття полягає в побудові нового дерева із двох наявних дерев (або листків) з найменшими ймовірностями. Причому листок або дерево з більшою ймовірністю – ліве піддерево, а сума ймовірностей лівого і правого піддерев дорівнює ймовірності отриманого дерева. (Її записують у корінь). Помішають 0 на ребро до лівого піддерева, а 1 – на ребро до правого піддерева. Список ймовірностей перед кожним злиттям упорядковують за спаданням.
24. Коди, стійкі до перешкод. Загальна теорія.
Розглянемо схему рівномірного кодування σk,n іщ параметрами k,n:
…
Де
-
слова довжини, відповідно, k
та
n
(n>k).
Кажуть,
що схема σk,n
визначена кодом
.
Нормою ||α|| двійкового вектора α=а1а2…аn називають число, яке дорівнює кількості його одиничних компонент. Отже,
||α||=
Припустимо,
що в каналі зв’язку діє джерело адитивних
перешкод, яке описують множиною P(n,t).
Елементи цієї множини – двійкові
вектори-помилки x1x2…xs,
у яких норма будь якого фрагмента
не більша, ніж t,
якщо довжина фрагмента l<=n.
Це означає, що якщо на вході каналу
зв’язку передано повідомлення α, то
на виході може бути отримано будь-яке
слово із множини
.
Оскільки проблема локалізації інформації (розділення закодованого повідомлення на елементарні коди) у моделі рівномірного кодування тривіальна, то виявлення помилок полягає в знаходженні незбігу локалізованої групи n символів з жодним елементарним кодом. Якщо внаслідок помилки елементарний код перейде в інший елементарний код, то помилку не буде виявлено. Іноді можливе виправлення помилки.
Канал зв’язку називають надійним, якщо будь-які помилки виявляються або виправляються відповідно до заданої мети декодування.
25. Коди, стійкі до перешкод: коди Хемінга.
Р. Хемінг 1950 р. запропонував коди для виявлення й виправлення помилок у разі t=1. Коди Хемінга лінійні та мають найменшу надлишковість, можливу для даного k.
Коди
Хемінга
для
виявлення помилок у каналі зв’язку із
джерелом перешкод P(n,1)
визначені для будь-якого n:
.
Код - лінійний. Справді, якщо X, Y є , то
Тобто
X
Y
є
.
За співвідношенням
ρ(
)=2,
тому, будь-яка помилка в каналі з джерелом
перешкод P(n,1)
виявляється. Як інформаційні розряди
для коду
можна взяти будь-які n-1
розрядів, оскільки значення в довільному
розряді слова
однозначно
визначається за значеннями в інших
розрядах із рівняння
.
Маємо
Як одну з породжувальних матриць можна
взяти
Якщо
вибрати I={1,2,j,n-1},
то отримаємо відповідну схему рівномірного
кодування
:
,
де
.
Надлишковість
у разі використання
становить
.
У
цьому коді Хемінга найбільш явно
використана ідея перевірки на парність.
Коди Хемінга
для виправлення помилок у каналі зв’язку
з джерелом перешкод P(n,1)
будують для значень
.
Код
зручно задавати перевірочною матрицею,
яка має s
рядків та
стовпців. Стопцями є всеможливі ненульові
двійкові набори довжини s.
Їх зручно розташувати так, щоб і-тий
зліва стовпчик hi
був двійковим розкладом числа і (старші
розряди зверху):
0
0 0 … 1 1
0 0 0 … 1 1
……………… = H( )
0 1 1 … 1 1
1 0 1 … 0 1
Таке розташування стовпців перевірочної матриці зумовлено вибором як контрольних тих розрядів, у яких номери є степенями двійки.