Cấu trúc dữ liệu và Giải thuật | 2022 Văn Chí Nam Lê Thanh Tùng CHALLENGE 1 NÉN DỮ LIỆU 1 Nội dung 1 1 Tìm hiểu Nén dữ liệu là quá trình biểu diễn thông tin dưới dạng rút gọn Nén dữ liệu đã và đang là.
Cấu trúc liệu Giải thuật | 2022 Văn Chí Nam - Lê Thanh Tùng CHALLENGE 1: NÉN DỮ LIỆU Nội dung 1.1 Tìm hiểu Nén liệu q trình biểu diễn thơng tin dạng rút gọn Nén liệu kỹ thuật hỗ trợ quan trọng cho cách mạng kỹ thuật số diễn nhiều thập kỷ Challenge đề cập đến hai thuật toán nén kinh điển: Nén Huffman tĩnh (Static Huffman Encoding) Lempel-Ziv-Welch(LZW) Sinh viên tham khảo tài liệu sau để hồn thành yêu cầu Phát biểu thuật tốn Huffman tĩnh LZW, cần nêu rõ: • Pha nén giải nén thuật tốn • Mỗi pha cần biểu diễn theo bước, khơng trình bày mã nguồn • Các cấu trúc liệu có liên quan cần thể hiện, đồng thời nêu rõ ảnh hưởng cấu trúc liệu lên thuật tốn nén • Khuyến khích việc sử dụng ví dụ minh họa cho yêu cầu Chỉ điểm mạnh điểm hạn chế thuật toán nêu Chỉ số ứng dụng thực tế phiên cải tiến thuật tốn nêu 1.2 Lập trình Sinh viên yêu cầu cài đặt chương trình chiều: Nén Giải nén file văn sử dụng thuật tốn nén LZW • Chương trình cần biên dịch thành file thực thi có định dạng ".exe" nhận tham số dòng lệnh sau: Cấu trúc liệu Giải thuật | 2022 Văn Chí Nam - Lê Thanh Tùng A.exe Action InputPath OutputPath OutputInfo đó: ∗ A.exe: File thực thi ".exe" ∗ Action: • -e: Pha nén Nhận vào file input có định dạng (.txt) and trả file output nhị phân có định dạng (.lzw ) • -d: Pha giải nén Nhận vào file input nhị phân có định dạng (.lzw ) trả file text có định dạng (.txt) ∗ InputPath: Đường dẫn đến file input ∗ OutputPath: Đường dẫn đến file output ∗ OuputInfo: Các thông tin trình thực thi, cần hiển thị hình console • -i: Kích thước file input, kích thước file output, tỉ lệ (%) không gian nhớ tiết kiệm • -d: Từ điển LZW tạo q trình nén/giải nén • -ind: Cả thơng tin Ví dụ: Cấu trúc liệu Giải thuật | 2022 Text file Text file: "Data.txt" Văn Chí Nam - Lê Thanh Tùng Compressed file Binary file: "Compressed.lzw" -i -d Input size: bits new word 1: 256 Output size: bits new word 2: 257 Space saved: % WY: 256 YS: 257 S*: 258 *W: 259 Input size: 144 bits WYG: 260 WYS*WYGWYS*WYSWYSG 87 89 83 42 256 71 256 258 262 262 71 Output size: 110 bits GW: 261 Space saved: 23.6% WYS: 262 S*W: 263 WYSW: 264 WYSG: 265 Yêu cầu Quy định nộp 2.1 Yêu cầu • Phần Challenge phần tập không bắt buộc Điểm số Challenge cộng thêm vào điểm tổng kết mơn học • Sẽ có Challenge xun suốt trình học Sinh viên làm Challenge theo nhóm 3-4 người • Một Challenge hợp lệ (Được chấm tính điểm cộng) cần thỏa mãn điều kiện sau: – Nằm số 11 nộp (tính theo mốc thời gian lần nộp cuối cùng) Link nộp đóng đủ nhóm nộp hết thời hạn nộp Cấu trúc liệu Giải thuật | 2022 Văn Chí Nam - Lê Thanh Tùng – Bài làm cần đảm bảo thể đầy đủ yêu cầu giao Khơng chấp nhận làm thiếu sót nhiều phần hình thức – Trình bày thực đầy đủ quy định phần Quy định nộp bên – Đối với Challenge, sinh viên cần lập nhóm 3-4 người mới, nghĩa là, sinh viên chung nhóm tối đa Challenge • Giảng viên lý thuyết yêu cầu nhóm có nộp Challenge hợp lệ trình bày trước lớp buổi học lý thuyết 2.2 Quy định nộp • Mã nhóm chuỗi kết hợp 3-4 số cuối mã số sinh viên thành viên nhóm, ngăn cách dấu "_" Thành viên khóa lớn đứng trước, khóa MSSV lớn đứng trước Ví dụ: – 1812999, 20120995, 20120994 → 999_995_994 – 20120999, 20120995, 20120994 → 994_995_999 • Nhóm sinh viên nộp Moodle dạng [Mã_nhóm.rar] [Mã_nhóm.zip], file nén thư mục [Mã_nhóm] Thư mục bao gồm: – File báo cáo trình bày dạng văn [DS_Report.pdf] dạng slide [DS_Report.pptx] File chứa: thông tin sinh viên thực nội dung tìm hiểu phần 1.1 trình bày hướng giải vấn đề lập trình phần 1.2 ∗ Nếu nộp file báo cáo dạng slide, cần giải thích cặn kẽ slide phần Note slide ∗ Trang đầu (hoặc slide đầu) file báo cáo cần ghi rõ thông tin (Họ tên, MSSV) thành viên nhóm Cấu trúc liệu Giải thuật | 2022 Văn Chí Nam - Lê Thanh Tùng ∗ File báo cáo cần trình bày có cấu trúc, logic, rõ ràng, mạch lạc, trả lời thẳng vào trọng tâm câu hỏi Độ dài nộp không vượt 15 trang file văn bản, 30 trang slide – Thư mục lập trình Source Thư mục chứa file ".cpp" ".h", sinh viên có nộp kèm file có định dạng khác, cần giải thích rõ ràng cơng dụng file báo cáo u cầu mã nguồn cần trình bày logic, có thích rõ ràng ... đứng trước Ví dụ: – 18 12999, 2 012 0995, 2 012 0994 → 999_995_994 – 2 012 0999, 2 012 0995, 2 012 0994 → 994_995_999 • Nhóm sinh viên nộp Moodle dạng [Mã_nhóm.rar] [Mã_nhóm.zip], file nén thư mục [Mã_nhóm]... nhóm Cấu trúc liệu Giải thuật | 2022 Văn Chí Nam - Lê Thanh Tùng ∗ File báo cáo cần trình bày có cấu trúc, logic, rõ ràng, mạch lạc, trả lời thẳng vào trọng tâm câu hỏi Độ dài nộp không vượt 15 ... output, tỉ lệ (%) khơng gian nhớ tiết kiệm • -d: Từ điển LZW tạo q trình nén /giải nén • -ind: Cả thơng tin Ví dụ: Cấu trúc liệu Giải thuật | 2022 Text file Text file: "Data.txt" Văn Chí Nam - Lê Thanh