Professional Documents
Culture Documents
Huffman Coding
Huffman Coding
Huffman Coding là một kỹ thuật nén dữ liệu để giảm kích thước của nó mà không làm mất
bất kỳ chi tiết nào. Nó được phát triển lần đầu tiên bởi David Huffman.
Mã hóa Huffman thường hữu ích để nén dữ liệu trong đó có các ký tự xuất hiện thường
xuyên.
Mỗi ký tự chiếm 8 bit. Có tổng cộng 15 ký tự trong chuỗi trên. Vì vậy, tổng số 8 * 15 =
120bit được yêu cầu để gửi chuỗi này.
Sử dụng kỹ thuật Mã hóa Huffman, chúng ta có thể nén chuỗi xuống kích thước nhỏ hơn.
Bước 1: Tính tần số của mỗi ký tự trong chuỗi.
Bước 2: Sắp xếp các ký tự theo thứ tự tần số tăng dần. Chúng được lưu trữ trong hàng đợi ưu
tiên.
Bước 3: Loại bỏ hai phần tử nhỏ nhất khỏi hàng ưu tiên. Sau đó, hợp nhất hai nút đó và chèn
lại nút gốc mới vào hàng ưu tiên.
Bước 4: Gán 0 cho nhánh bên trái và gán 1 cho nhánh bên phải
Để gửi chuỗi trên qua mạng, chúng ta phải gửi cây cũng như mã nén ở trên. Tổng kích thước
được đưa ra bởi bảng dưới đây.