Инфоурок Другое ПрезентацииПрезентация по информатики на тему "Сжатие информации. Алгоритм Хаффмана" (10 класс)

Презентация по информатики на тему "Сжатие информации. Алгоритм Хаффмана" (10 класс)

Скачать материал
Скачать материал

Описание презентации по отдельным слайдам:

  • Сжатие информацииАлгоритм ХаффманаСоздатель: учитель информатики 
Москвитина...

    1 слайд

    Сжатие информации
    Алгоритм Хаффмана
    Создатель: учитель информатики
    Москвитина Е.В.

  • Для того чтобы сэкономить место на внешних носителях (винчестерах, флэш‐диска...

    2 слайд

    Для того чтобы сэкономить место на внешних носителях (винчестерах, флэш‐дисках) и ускорить передачу информации по компьютерным сетям, нужно ее сжать – уменьшить информационный объем, сократить длину двоичного кода. Возможны две ситуации при сжатии:
    Потеря информации в результате сжатия недопустима;
    Допустима частичная потеря информации в результате сжатия.

  • Сжатие информацииСжатие данных – сокращение объема данных при сохранении зако...

    3 слайд

    Сжатие информации
    Сжатие данных – сокращение объема данных при сохранении закодированного в них содержания.

  • При упаковке данных в файловые архивы производится их сжатие без потери инфор...

    4 слайд

    При упаковке данных в файловые архивы производится их сжатие без потери информации.
    Сжатие с частичной потерей информации производится при сжатии кода изображения (графики, видео) и звука.
    Сжатие без потери информации:
    использование неравномерного кода;
    выявление повторяющихся фрагментов кода.

  • Сжатие информацииСжатие происходит за счет устранения избыточности кода, напр...

    5 слайд

    Сжатие информации
    Сжатие происходит за счет устранения избыточности кода, например, за счет упрощения кодов, исключения из них постоянных битов или представления повторяющихся символов в виде коэффициента повторения.
    Важнейшая характеристика процесса сжатия – коэффициент сжатия.
    Коэффициент сжатия – отношение объема исходного сообщения к объему сжатого.

  • Алгоритмы сжатия, использование неравномерного кодаВ основе первого подхода л...

    6 слайд

    Алгоритмы сжатия, использование неравномерного кода
    В основе первого подхода лежит использование неравномерного кода.
    В восьмиразрядной таблице символьной кодировки (ASCII), каждый символ кодируется восемью битами и, следовательно, занимает в памяти 1 байт. Информационный вес символа тем больше, чем меньше его частота встречаемости. С этим обстоятельством и связана идея сжатия текста в компьютерной памяти: отказаться от одинаковой длины кодов символов.

  • Сжатие с использованием кодов переменной длиныОдним из простейших, но весьма...

    7 слайд

    Сжатие с использованием кодов переменной длины
    Одним из простейших, но весьма эффективных способов построения двоичного неравномерного кода, не требующего специального разделителя является алгоритм Д.Хаффмана.

  • Алгоритм ХаффманаАлгоритм Хаффмана — адаптивный алгоритм оптимального       п...

    8 слайд

    Алгоритм Хаффмана
    Алгоритм Хаффмана — адаптивный алгоритм оптимального  префиксного кодирования алфавита с минимальной избыточностью.
    Был разработан 1952 году аспирантом Массачусетского технологического института Дэвидом Хаффманом при написании им курсовой работы. В настоящее время используется во многих программах сжатия данных.

  • Таблица ХаффманаОсобенностью данного кода является его префиксная структура....

    9 слайд

    Таблица Хаффмана
    Особенностью данного кода является его префиксная структура. Это значит, что код любого символа не совпадает с началом кода всех остальных символов.

  • Префиксные кодыЧтобы понять, как строятся префиксные коды, рассмотрим, как по...

    10 слайд

    Префиксные коды
    Чтобы понять, как строятся префиксные коды, рассмотрим, как построить ориентированный граф, определяющий этот код.
    Например, кодовые слова 00, 01, 10, 011, 100, 101, 1001, 1010, 1111, кодируют соответственно буквы: a, b, c, d, e, f, g, h, i.

  • Префиксные кодыПостроим граф этого кода.
Из начальной вершины выходят две дуг...

    11 слайд

    Префиксные коды
    Построим граф этого кода.
    Из начальной вершины выходят две дуги, помеченные 0 и 1. Затем из конца каждой такой дуги входят новые дуги, помеченные 0 и 1 так, чтобы, идя по этим дугам от корня, читалось начало какого-либо кодового слова.

  • Префиксные кодыЕсли при этом какое-то последовательность оказывается прочитан...

    12 слайд

    Префиксные коды
    Если при этом какое-то последовательность оказывается прочитанным полностью, то у конца последней дуги пишется кодируемый символ.
    Из получившихся вершин снова проводятся дуги — и так далее, до тех пор, пока не будут исчерпаны все коды.

  • 13 слайд

  • Коэффициентом сжатия называют отношение длины кода в байтах после сжатия к ег...

    14 слайд

    Коэффициентом сжатия называют отношение длины кода в байтах после сжатия к его длине до сжатия.
    Деревом называется графическое представление (граф) структуры связей между элементами некоторой системы.
    Двоичным деревом называется дерево, в котором любая вершина, имеет не более двух потомков.
    Корнем дерева называется единственная вершина, не имеющая родительской вершины.
    Листьями дерева называются вершины, не имеющие потомков.

  • 15 слайд

  • 16 слайд

  • Пример:Предположим, что необходимо выполнить компрессию текстового документа...

    17 слайд

    Пример:
    Предположим, что необходимо выполнить компрессию текстового документа с фразой “мама_мыла_раму”. Наш исходный текст “весит” 112 бит, так как каждый символ занимает 8 бит в кодовой таблице, а таких символов у нас 14 штук.

  • 1. Составляем таблицу частот, то есть, подсчитываем количество вхождений кажд...

    18 слайд

    1. Составляем таблицу частот, то есть, подсчитываем количество вхождений каждой буквы во фразу, в результате чего получим вес каждой буквы:

  • 2. Сортируем значения в таблице по весам, в порядке спадания:

    19 слайд

    2. Сортируем значения в таблице по весам, в порядке спадания:

  • 3. Выбираем 2 значения с минимальными весами (“р” и “у”), суммируем их веса и...

    20 слайд

    3. Выбираем 2 значения с минимальными весами (“р” и “у”), суммируем их веса и заменяем эти значения в таблице одним объединенным значением:

  • Формируем  дерево

    21 слайд

    Формируем дерево

  • 4. Снова выбираем 2 значения с минимальными весами (“ы” и “л”), делаем с ними...

    22 слайд

    4. Снова выбираем 2 значения с минимальными весами (“ы” и “л”), делаем с ними то же, что и на предыдущем шаге:

  • Дерево стало таким:

    23 слайд

    Дерево стало таким:

  • 5. Снова выбираем 2 значения с минимальными весами (“ыл” и “ру”), делаем с ни...

    24 слайд

    5. Снова выбираем 2 значения с минимальными весами (“ыл” и “ру”), делаем с ними то же, что и на предыдущем шаге:

  • Дерево стало таким:

    25 слайд

    Дерево стало таким:

  • 6. Снова выбираем 2 значения с минимальными весами (“_” и “ылру”), делаем с н...

    26 слайд

    6. Снова выбираем 2 значения с минимальными весами (“_” и “ылру”), делаем с ними то же, что и на предыдущем шаге

  • Дерево стало таким:

    27 слайд

    Дерево стало таким:

  • 7. Снова выбираем 2 значения с минимальными весами (“м” и “а”), делаем с ними...

    28 слайд

    7. Снова выбираем 2 значения с минимальными весами (“м” и “а”), делаем с ними то же, что и на предыдущем шаге:

  • Дерево стало таким:

    29 слайд

    Дерево стало таким:

  • Последний шаг:

    30 слайд

    Последний шаг:

  • 31 слайд

  • 32 слайд

  • РЕЗУЛЬТАТКОЭФФИЦИЕНТ СЖАТИЯ:   112/40=2,8

    33 слайд

    РЕЗУЛЬТАТ
    КОЭФФИЦИЕНТ СЖАТИЯ: 112/40=2,8

  • Алгоритм кода Хаффмана:
1. Символы исходного алфавита образуют вершины. Вес к...

    34 слайд

    Алгоритм кода Хаффмана:
    1. Символы исходного алфавита образуют вершины. Вес каждой вершины вес равен количеству вхождений данного символа в сжимаемое сообщение.
    2. Среди вершин выбираются две с наименьшими весами (если таких пар несколько, выбирается любая из них).
    3. Создается следующая вершина графа, из которой выходят две дуги к выбранным вершинам; одна дуга помечается цифрой 0, другая — символом 1.
    Вес созданной вершины равен сумме весов, выбранных на втором шаге вершин.
    4. К новым вершинам применяются шаги 2 и 3 до тех пор, пока не останется одна вершина с весом, равным сумме весов исходных символов.

  • Математики доказали, что среди алгоритмов, кодирующих каждый символ по отдель...

    35 слайд

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

  • Ко второму подходу к сжатию без потерь относится подход, основанный на идее в...

    36 слайд

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

  • Решить самостоятельно:Постройте код Хаффмана для фраз и определить коэффициен...

    37 слайд

    Решить самостоятельно:
    Постройте код Хаффмана для фраз и определить коэффициент сжатия.
    Карл_ у_клары_украл_ кораллы, а_клара_У_карла_украла_кларнет
    НА_ ДВОРЕ_ ТРАВА,_ НА_ ТРАВЕ_ ДРОВА



  • Решить самостоятельно:2. Закодируйте с помощью кода Хаффмана следующий текст:...

    38 слайд

    Решить самостоятельно:
    2. Закодируйте с помощью кода Хаффмана следующий текст:
    HAPPYNEWYEAR
    3. Расшифруйте с помощью двоичного дерева Хаффмана следующий код:
    11110111 10111100 00011100 00101100
    10010011 01110100 11001111 11101101
    001100


  • Для кодирования сообщения, состоящего из букв А, Б, В, Г и Д, используется не...

    39 слайд

    Для кодирования сообщения, состоящего из букв А, Б, В, Г и Д, используется неравномерный двоичный код, позволяющий однозначно декодировать полученную двоичную последовательность.
    А–00, Б–010, В–011, Г–101, Д–111.
    Можно ли сократить для одной из букв длину кодового слова так, чтобы код по-прежнему можно было декодировать однозначно?
    Выберите правильный вариант ответа.
    1) для буквы Б – 01 2) это невозможно
    3) для буквы В – 01 4) для буквы Г – 01
    Задача А9

  • 00000101111011кореньЗадача А9. Решение.Построим двоичное дерево, в котором от...

    40 слайд

    0
    0
    0
    0
    0
    1
    0
    1
    1
    1
    1
    0
    1
    1
    корень
    Задача А9. Решение.
    Построим двоичное дерево, в котором от каждого узла отходит две ветки: 0 или 1.
    Разместим на дереве буквы А, Б, В, Г и Д так, чтобы их код получался как последовательность чисел на рёбрах:
    А
    Б
    В
    Г
    Д

  • Задача А9. Решение.По дереву определим, что для букв Г и Д код можно сократит...

    41 слайд

    Задача А9. Решение.
    По дереву определим, что для букв Г и Д код можно сократить. Выберем ответ из предложенных вариантов:
    1) для буквы Б – 01 2) это невозможно
    3) для буквы В – 01 4) для буквы Г – 01
    0
    0
    0
    0
    0
    1
    0
    1
    1
    1
    1
    0
    1
    1
    А
    Б
    В
    Г
    Д
    Ответ: 4.

  • Для передачи по каналу связи сообщения, состоящего только из букв А, Б, В, Г,...

    42 слайд

    Для передачи по каналу связи сообщения, состоящего только из букв А, Б, В, Г, решили использовать неравномерный по длине код:
    A=0, Б=10, В=110.
    Как нужно закодировать букву Г, чтобы длина кода была минимальной и допускалось однозначное разбиение кодированного сообщения на буквы?
    1) 1 2) 1110 3) 111 4) 11
    Для самостоятельной работы

  • Для 5 букв латинского алфавита заданы их двоичные коды. 
Эти  коды представле...

    43 слайд

    Для 5 букв латинского алфавита заданы их двоичные коды.
    Эти коды представлены в таблице:
    Задача А9
    Определить, какой набор букв закодирован двоичной строкой 0110100011000

  • Для передачи по каналу связи сообщения, состоящего только из букв  А, Б, В, Г...

    44 слайд

    Для передачи по каналу связи сообщения, состоящего только из букв А, Б, В, Г, решили использовать неравномерный по длине код:
    A=0, Б=10, В=110.
    Как нужно закодировать букву Г, чтобы длина кода была минимальной и допускалось однозначное разбиение кодированного сообщения на буквы?
    Задача А9

  • Д/ЗПостройте код Хаффмана для фраз и определить коэффициент сжатия.
ОТ_ТОПОТА...

    45 слайд

    Д/З
    Постройте код Хаффмана для фраз и определить коэффициент сжатия.
    ОТ_ТОПОТА_КОПЫТ_ПЫЛЬ_ПО_ПОЛЮ_ЛЕТИТ
    ШЛА_САША_ПО_ШОССЕ_И СОСАЛА_СУШКУ

  • Список используемой литературы:http://crazycode.net/blog/10-algorithms-and-da...

    46 слайд

    Список используемой литературы:
    http://crazycode.net/blog/10-algorithms-and-data-structures/31-huffman
    http://edu.1september.ru/courses/07/008/01.pdf
    http://www.lukomor.ru/attach/pages/ege13/A09.pdf?PHPSESSID=9fa7039ee3de232e76b2a13614accbf5
    Педагогический университет «Первое сентября», 2008г.
    И.Г. Семакин «Информатика и ИКТ» 10 класс профильный уровень,2012



Краткое описание документа:

Данная презентация предназнача для 10 класса (профильного) на урок информатики по теме "Сжатие двоичного кода.Алгоритм Хаффмана". Особое внимание уделяется на виды сжатия иформации (с потерей и без потери информации). Подробно описывается алгоритм Хаффмана, приводятся примеры, рассчитывается коэффициент сжатия информации; для закрепления даны задачи для самостоятелного решения; также в конце приведены задания по данной теме, которые встречаются в ЕГЭ, первые задачи приведены с решением, затем опять для самостоятельно решения, для закрепления полученных знаний.

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

5 896 624 материала в базе

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 17.11.2014 1874
    • PPTX 1.8 мбайт
    • 77 скачиваний
    • Рейтинг: 3 из 5
    • Оцените материал:
  • Настоящий материал опубликован пользователем Москвитина Екатерина Васильевна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    • На сайте: 7 лет и 9 месяцев
    • Подписчики: 0
    • Всего просмотров: 10095
    • Всего материалов: 6

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой