Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

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

ha2

Reported by: gordeev.stanislav Owned by: Vladimir Rutsky
Priority: проверка Milestone:
Component: HA#2 huffman Version:
Keywords: Cc: gordeev.so@…

Description


Change History (4)

comment:1 Changed 7 years ago by Vladimir Rutsky

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

Замечания:

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

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

  1. Размер доп. данных в выводимой статистике не соответствует действительности.

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

comment:2 Changed 7 years ago by gordeev.stanislav

Cc: gordeev.so@… added
Type: ожидаются исправленияожидается проверка
  1. Избавился от priority_queue.
  2. Переделал расчет статистики.

comment:3 Changed 7 years ago by Vladimir Rutsky

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

Станислав, избавляться от priority_queue не стоило --- достаточно было изменить компаратор, чтобы сделать его стабильным.

Для исправления вывода статистики в прошлой версии достаточно было:

-        uint32_t utility_size_in_bytes = sizeof(uint32_t) + sizeof(uint16_t) + sizeof(uint8_t) + huffman_table.size();
+        uint32_t utility_size_in_bytes = sizeof(uint32_t) + sizeof(uint16_t) + sizeof(uint8_t) + huffman_table.size() * 2;

Решение зачтено, но с минусом.

comment:4 Changed 7 years ago by Vladimir Rutsky

Milestone: ha2-deadline

Milestone ha2-deadline deleted

Note: See TracTickets for help on using tickets.