Перейти к содержимому
-
Subscribe to our newsletter & never miss our best posts. Subscribe Now!
Детский университет

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

Детский университет

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

  • Главная
  • Контакты
  • О проекте
  • Политика конфиденциальности
  • Главная
  • Контакты
  • О проекте
  • Политика конфиденциальности
Закрыть

Поиск

  • https://www.facebook.com/
  • https://twitter.com/
  • https://t.me/
  • https://www.instagram.com/
  • https://youtube.com/
Subscribe
Блог

Методы сжатия данных: алгоритмы и инструменты

3 Минут чтения
0
Методы сжатия данных: алгоритмы и инструменты

Методы сжатия данных. Показываем, какие есть алгоритмы и инструменты. Рассматриваем реальные примеры и кейсы ✔ Tproger Наверняка вы сталкивались с zip–архивами, сохраняли фото в jpeg или смотрели видео в 144p — всё это примеры сжатых данных.

Это вам поможет
  1. Бесплатник "Как провести лето, чтобы оно стало точкой роста"
  2. Курсы подготовки к ЕГЭ по русскому языку
  3. Платные: Подготовка к ВПР и ОГЭ для 8 класса
  4. Экспертное сопровождение при поступлении в вуз
  5. Подготовка к ЕГЭ с гарантией результата 11 класс

Когда мы говорим о сжатии (компрессии), то имеем в виду уменьшение исходного размера без потери содержимого. Так можно хранить больше информации, быстрее её передавать и считывать. Методы сжатия данных принято делить на 2 категории: с потерей и без потери. Рассмотрим их подробнее. При сжатии данных с потерями мы безвозвратно удаляем часть информации. Но делаем это так, чтобы не потерять общую суть. Например, надо сжать картинку для сайта, чтобы он быстрее прогружался. Ниже два варианта одного изображения. Один исходник, второй сжатый. Как думаете — какой где? По идее исходник должен уступать оригиналу в визуальном плане, однако разницы между этими изображениями практически не видно. Оригинал — первое изображение в формате png. Второе — сжатый вариант в формате jpeg. Казалось бы, вариант 2 должен был потерять качество, и это произошло. При компрессии были удалены некоторые похожие оттенки цветов и лишние детали, а размер файла уменьшился с 2.38МБ до 145 КБ. При этом визуально он все еще выглядит неплохо. То же самое происходит и при работе с аудио и видео. В файле могут содержаться звуки, которые не воспринимает человеческое ухо, статичные элементы, которые не изменяются от кадра к кадру. Всё это излишки, которые можно отбросить без потери смысла. При методах сжатия без потерь мы не удаляем лишние данные, а стараемся упаковать их более компактно. Допустим, нам нужно составить список покупок. Мы можем записать его так: Однако некоторые продукты повторяются здесь несколько раз, поэтому эту запись можно сделать более компактной вот так: Давайте рассмотрим три наиболее распространенных метода сжатия без потерь. Метод Хаффмана позволяет нам компактно закодировать данные при помощи манипуляций с частотой объектов и выстраивания дерева. А еще его включают в себя многие другие алгоритмы и форматы сжатия. Рассмотрим пошагово кодирование Хаффмана на примере сжатия слова: «compression». Определяем, сколько раз тот или иной символ встречался в тексте. Записываем символы в таблицу в порядке убывания. Под ними указываем частоту. Записываем символы как листья дерева. Их частотность будет весом. Находим два крайних правых листа и строим над ними новый. Записываем в него символы и сумму их частот. Мы создали лист «in» с весом 2. Формируем листы дальше. Теперь мы построили лист «ein» с весом 3 из «in» и «e». Продолжаем до тех пор, пока не создадим последний лист. Мы закончили строить дерево. Теперь можно приступить к кодированию знаков. Вершина «oscmprein» является корнем нашего дерева, так как обладает наибольшим весом — 11. Каждая линия означает один бит. Для линий справа это единица, слева — ноль. Теперь при помощи битов линий мы кодируем каждый символ. Для этого необходимо представить путь от корня до нужного знака. Сочетание битов линий на пути будет нашим кодом. Например, между «o» и корнем «oscmprein» есть только одно ребро, которое равно нулю. Следовательно, «o» это 0. От корня до «s» ведут две линии: один и ноль. Значит, код будет 10. И так до узла «n», код которого 11111111.

Источник: tproger.ru — tproger.ru/articles/metody-szhatiya-dannyh—algoritmy-i-instrumenty-251908

Метки:

методы
Автор

admin

Подпишись на меня
Другие статьи
Назад

REST API: что это и как работает

Психология. Как найти занятие по душе на пенсии
Далее

Психология. Как найти занятие по душе на пенсии

Нет комментариев! Будьте первым.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Свежие записи

  • WSJ указала на возможные проблемы для экономики США из-за кризиса в Boeing и Intel
  • В России снова наблюдаются массовые проблемы с доступом в интернет
  • Как проблемы с интернетом бьют по бизнесу: отвечают предприниматели
  • Apple спросила владельцев iPhone Duo о недостатках смартфона, но обошла стороной три проблемы
  • Энергетики устранили проблемы с электроснабжением в Тюменской области

Свежие комментарии

Нет комментариев для просмотра.

Архивы

  • Ноябрь 2026

Рубрики

  • Блог
Copyright 2026 — Детский университет. All rights reserved. Blogsy WordPress Theme
О проекте  ·  Контакты  ·  Политика конфиденциальности