Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#75 closed ожидается проверка (задача сдана)

ДЗ#2: Хаффман

Reported by: nikulin.dmitrij Owned by: Vladimir Rutsky
Priority: проверка Milestone:
Component: HA#2 huffman Version:
Keywords: Cc:

Description


Change History (6)

comment:1 Changed 7 years ago by nikulin.dmitrij

2016-11-15 добавлен забытый изначально вывод статистики.

comment:2 Changed 7 years ago by Vladimir Rutsky

Milestone: ha2-milestone2ha2-deadline
Type: ожидается проверкаожидаются исправления

Замечания:

  1. Заголовочный файл должен называться huffman.hpp, а у вас называется huffman.h.
  1. Не используйте макроконстанты:
#define BITS_PER_BYTE 8
#define ALPHABET_SIZE 256

используйте C++ константы.

  1. std::priority_queue не гарантирует, что при добавлении элементов с одним приоритетом они будут извлечены в каком-то определённом порядке, поэтому теоретически ваше решение может строить различные деревья при кодировании и декодировании, если у каких-то символов одинаковый частота встречаемости, при приведёт к ошибочному декодированию.

Сделайте сравнение TreeNode * стабильным (для всех вершин, не только листьев).

  1. Используйте тип size_t для индексов и размеров:
for (int i = 0; i < sizes[byte]; i++) {

Исправьте, пожалуйста, в ближайшее время.

comment:3 Changed 7 years ago by nikulin.dmitrij

Поскольку я сохраняю в файл само дерево, а не таблицу частот, priority_queue используется только при кодировании, и поэтому проблема, которую вы описали в третьем пункте, возникнуть не может.

Остальные исправления я внёс. Проверьте, пожалуйста.

comment:4 Changed 7 years ago by nikulin.dmitrij

Type: ожидаются исправленияожидается проверка

comment:5 in reply to:  3 Changed 7 years ago by Vladimir Rutsky

Resolution: задача сдана
Status: newclosed

Replying to nikulin.dmitrij:

Поскольку я сохраняю в файл само дерево, а не таблицу частот, priority_queue используется только при кодировании, и поэтому проблема, которую вы описали в третьем пункте, возникнуть не может.

Вы правы, у вас нет данной ошибки.

Решение зачтено.

comment:6 Changed 7 years ago by Vladimir Rutsky

Milestone: ha2-deadline

Milestone ha2-deadline deleted

Note: See TracTickets for help on using tickets.