Suppose you are using the LZW algorithm to encode the message AAABCADAB contents of the dictionary at the beginning of encoding are: (1) A (2) B (3) C (4) D What string is denoted by code word (6)?

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: "AAB". LZW giữ một chuỗi w và đọc thêm từng ký tự k: nếu wk đã có trong từ điển thì mở rộng w thành wk, nếu chưa có thì phát mã của w, thêm wk vào từ điển rồi đặt w = k. Với thông điệp AAABCADAB và từ điển khởi đầu (1) A, (2) B, (3) C, (4) D: w = A, đọc A thứ hai thì AA chưa có nên phát mã 1 và thêm AA thành mục (5), w = A; đọc A thứ ba thì AA đã có nên w = AA; đọc B thì AAB chưa có nên phát mã 5 và thêm AAB thành mục (6). Vậy mã (6) đại diện cho chuỗi AAB. Phương án "AA" là mục (5), sinh ra ngay ở bước đầu. Phương án "CA" chỉ vào từ điển muộn hơn, sau khi BC đã được thêm. Phương án "AB" vào từ điển ở bước cuối cùng, sau BC, CA, AD và DA. Phương án "ABC" chưa bao giờ là w cộng một ký tự trong lượt mã hoá này nên không được thêm vào từ điển.

Cùng phần 8

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