Yêu cầu của mã hóa là tiền tố miễn phí dẫn đến các cây lớn do cây phải hoàn thành. Có ngưỡng nào lưu trữ dữ liệu không được mã hóa theo chiều dài cố định sẽ hiệu quả hơn so với mã hóa dữ liệu không?
Yêu cầu của mã hóa là tiền tố miễn phí dẫn đến các cây lớn do cây phải hoàn thành. Có ngưỡng nào lưu trữ dữ liệu không được mã hóa theo chiều dài cố định sẽ hiệu quả hơn so với mã hóa dữ liệu không?
Câu trả lời:
Các entropy H(A)
cho vấn đề này là 1.998
. Cả mã hóa Huffman và mã hóa độ dài cố định cho vấn đề này đều có độ dài mã hóa avg như 2
. Và FYI mã hóa bạn có được khi sử dụng Huffman Encoding là sai. Huffman Encoding cũng tạo ra các mã tương tự như độ dài cố định cho vấn đề này. Nó sử dụng cách tiếp cận tham lam. Vì vậy, a
không nhận được một mã như 0
nhưng thay vào đó nó nhận được 00
. Làm lại trên cây bạn tạo bằng Huffman Coding. Cây bạn nên lấy là:
Mã Huffman xấp xỉ phân bố dân số với sức mạnh của hai xác suất. Nếu phân phối thực sự bao gồm các quyền hạn của hai xác suất (và các ký hiệu đầu vào hoàn toàn không tương quan), mã hóa Huffman là tối ưu. Nếu không, bạn có thể làm tốt hơn với mã hóa phạm vi. Tuy nhiên, nó là tối ưu trong số tất cả các mã hóa gán các bộ bit cụ thể cho các ký hiệu cụ thể trong đầu vào.
Có, nó luôn luôn là tối ưu.
Không, không có ngưỡng nơi nó sẽ sử dụng ít không gian hơn để sử dụng dữ liệu không được mã hóa có độ dài cố định.
Tôi đã tìm thấy một số bằng chứng trên Web, nhưng có đủ thảo luận trong bài viết Wikipedia Huffman mã hóa .
Điều này cũng bao gồm các kỹ thuật khác đạt được độ nén cao hơn (hoạt động bên ngoài không gian mà mã Huffman là tối ưu).