Suppose you are using the LZW algorithm to encode the message BBBABDACADA contents of the dictionary at the beginning of encoding are: (1) A (2) B (3) C (4) D What are the first 4 code words when encoding the above string?

5 phương ánCó giải thích

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở
Đáp án đúng: "(2) (5) (1) (2)". LZW đọc dần xâu BBBABDACADA và chỉ phát mã khi chuỗi đang gom không còn trong từ điển. Bắt đầu với B, thêm B thành BB chưa có nên phát mã của B là 2 và nạp BB vào ô 5; lại từ B, thêm B được BB đã có ở ô 5 nên gom tiếp, thêm A thành BBA chưa có nên phát 5 và nạp BBA vào ô 6; còn A, thêm B được AB chưa có nên phát mã của A là 1 và nạp AB vào ô 7; còn B, thêm D được BD chưa có nên phát mã của B là 2. Bốn mã đầu là 2, 5, 1, 2. "(2) (5) (6) (4)" dùng ngay ô 6 vừa nạp, nhưng ô 6 là BBA mà sau khúc BBA phần còn lại bắt đầu bằng AB nên không thể khớp. "(2) (5) (3) (2)" phát mã của C, trong khi ký tự đứng sau khúc BBA là A. "(2) (5) (2) (4)" bỏ mất chữ A ở vị trí thứ tư. "(5) (1) (4) (2)" phát mã của BB ngay bước đầu, lúc đó ô 5 còn chưa được nạp.

Cùng phần 8

Xuất hiện trong 1 bộ đề