1. Главная
  2. Библиотека
  3. Информационные технологии
  4. Используя алгоритм закодировать сообщение «ПРОГРАММНЫЕ...
Разбор задачи

Используя алгоритм закодировать сообщение «ПРОГРАММНЫЕ ПРОДУКТЫ ФИРМЫ MICROSOFT» используя алгоритм LZ77 (допустим, что размер окна составляет 20 символов, из них словаря – 12 символов, а буфера – 8).

  • Предмет: Информационные технологии
  • Автор: Кэмп
  • #Программирование (языки C++, Java, Python и др.)
  • #Алгоритмы и структуры данных
Используя алгоритм закодировать сообщение «ПРОГРАММНЫЕ ПРОДУКТЫ ФИРМЫ MICROSOFT» используя алгоритм LZ77 (допустим, что размер окна составляет 20 символов, из них словаря – 12 символов, а буфера – 8).

Условие:

Используя алгоритм закодировать сообщение «ПРОГРАММНЫЕ ПРОДУКТЫ ФИРМЫ MICROSOFT» используя алгоритм LZ77 (допустим, что размер окна составляет 20 символов, из них словаря – 12 символов, а буфера – 8).

Решение:

Для кодирования сообщения алгоритмом LZ77 мы будем использовать «скользящее окно», разделенное на две части:

  1. Словарь (12 символов) — область, где мы ищем совпадения.
  2. Буфер (8 символов) — область, которую мы кодируем в текущий момент.

Алгоритм записывает данные в виде кортежей (o,l,c)(o, l, c), где:

  • oo (offset) — расстояние от начала буфера до начала найденной подстроки в словаре.
  • ll (length) — длина найденной подстроки.
  • cc (char) — следующий символ, который не входит в подстроку.

Дано:

  • Сообщение: «ПРОГРАММНЫЕ ПРОДУКТЫ ФИРМЫ MICROSOFT»
  • Размер окна: 2020 символов....

Внутри — полный разбор, аргументация, алгоритм решения, частые ошибки и как отвечать на каверзные вопросы препода, если спросит

Попробуй решить по шагам

Попробуй один шаг и продолжи в режиме обучения или посмотри готовое решение

Какой элемент кортежа $(o, l, c)$ в алгоритме LZ77 указывает на длину найденной подстроки?

Что нужно знать по теме:

Что нужно знать по теме

Алгоритм решения

Топ 3 ошибок

Что спросит препод

Выбери предмет