1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo tiểu luận Nén DỮ LIỆU HUFFMAN

36 912 9

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 36
Dung lượng 502,19 KB

Nội dung

Báo cáo tiểu luận Nén DỮ LIỆU HUFFMAN Hầu hết các tập tin trong máy tính có nhiều thông tin dư thừa Nén tập tin thực chất là mã hóa lại thông tin dư thừa Tầm quan trọng: Giảm kích thước dữ liệu: Để lưu trữ. Truyền dữ liệu. Tăng tính bảo mật.

Trang 2

COMPANY LOGO

NỘI DUNG CHÍNH

IV Nén và giải nén III Xây dựng Cây Huffman

II Ý tưởng Nén dữ liệu Huffman

I Giới thiệu về nén và giải nén

V Cài đặt chương trình

Trang 3

COMPANY LOGO

I Giới thiệu chung về nén và giải nén

Giới thiệu chung:

 Hầu hết các tập tin trong máy tính có nhiều thông tin dư thừa

 Nén tập tin thực chất là mã hóa lại thông tin

Trang 4

COMPANY LOGO

Tác giả:

 Được đề xuất bởi David A Huffman

khi còn là sinh viên.

 Công bố năm 1952 trong bài báo "A

Method for the Construction of

Minimum - Redundancy Codes“

 Sau này Huffman trở thành giảng

viên của Đại học California

II Ý TƯỞNG NÉN DỮ LIỆU HUFFMAN

II Ý tưởng nén dữ liệu Huffman

Trang 5

COMPANY LOGO

II Ý TƯỞNG NÉN DỮ LIỆU HUFFMAN

Để lưu trữ dữ liệu trong máy tính, ta phải mã hóa chúng Ví dụ,

trong bộ mã ASCII nổi tiếng ra đời năm 1967, người ta dùng 8 bit

để mã hóa 1 ký tự, cụ thể như:

“A” = 1000001

“B” = 1000010

“C” = 1000011

Vậy, với bộ mã ASCII, chúng ta có thể mã hóa 28 = 256 ký tự,

với mỗi từ mã dài 8 bit.

Mã hóa dữ liệu

II Ý tưởng nén dữ liệu Huffman

Trang 6

COMPANY LOGO

II Ý TƯỞNG NÉN DỮ LIỆU HUFFMAN

Trang 8

Ký tự o xuất hiện 1 lần và ký tự a xuất hiện 3 lần đều dùng 3 bit như nhau.

Huffman nghĩ ra phương án ký tự nào xuất hiện nhiều lần thì nên dùng số bit

ít , ký tự nào xuất hiện ít thì có thể mã hóa bằng từ mã dài hơn.

Trang 9

COMPANY LOGO

II Ý TƯỞNG NÉN DỮ LIỆU HUFFMAN

Tuy nhiên, nếu mã hóa với độ dài thay đổi, thì khi giải mã ta làm thế nào phân biệt được xâu bít nào là mã hóa của ký hiệu nào?

Một trong các giải pháp là dùng các dấu phẩy (“,”) để tách từ mã của các kí tự đứng cạnh nhau

Nhưng như thế số các dấu phẩy sẽ

chiếm một không gian đáng kể trong bảng mã

Và mã tiền tố là giải pháp phù hợp trong trường hợp này.

Trang 10

COMPANY LOGO

II Ý TƯỞNG NÉN DỮ LIỆU HUFFMAN

Mã tiền tố là gì??

 Nếu mã hóa “A”=0, “B”=01, “C”=11 thì bộ từ mã này

không là mã tiền tố Vì từ mã của “A” là tiền tố của từ

mã của “B”.

 Nếu mã hóa “A”=0, “B”=10, “C”=11 thì bộ mã này là

mã tiền tố Khi đó, để mã hóa xâu “ACB” ta có

01110.

Xây dựng và biểu diễn mã tiền tố

Được xây dựng và biểu diễn bằng cây nhị phân gọi là

cây Huffman

II Ý tưởng nén dữ liệu Huffman

Trang 11

COMPANY LOGO

III XÂY DỰNG CÂY HUFFMAN

Ví dụ: Giả sử ta có dữ liệu như sau:

“ma huffman”

n f

0,09 0,18 0,18 0,09 0,18

Tần suất

1 2

Trang 12

COMPANY LOGO

Tạo 1 cây mới với cây con trái và cây con phải

là hai cây từ mảng cây có tần suất nhỏ nhất, tức là 2 cây ở vị trí 0 và 1

Khóa của cây cha là chuỗi gồm chuỗi cây con trái và cây con phải

Tần suất của cây cha là của 2 cây con trái và phải cộng lại

III Xây dựng cây Huffman

III XÂY DỰNG CÂY HUFFMAN

Trang 13

COMPANY LOGO

1 n 2

u 1 a 2 f 2 h 2 m 2

null 2

Sắp xếp lại mảng cây theo tần suất tăng dần, nếu bằng

nhau ưu tiên theo kí tự đầu của khóa

III Xây dựng cây Huffman

III XÂY DỰNG CÂY HUFFMAN

Trang 14

III Xây dựng cây Huffman

III XÂY DỰNG CÂY HUFFMAN

Trang 15

III Xây dựng cây Huffman

III XÂY DỰNG CÂY HUFFMAN

Trang 17

III Xây dựng cây Huffman

III XÂY DỰNG CÂY HUFFMAN

Trang 19

COMPANY LOGO

1 n 1

u 1 a 2 f 2 h 2 m 2 null 2

Tiếp tục sắp xếp

III Xây dựng cây Huffman

III XÂY DỰNG CÂY HUFFMAN

Trang 20

III Xây dựng cây Huffman

III XÂY DỰNG CÂY HUFFMAN

Trang 21

III Xây dựng cây Huffman

III XÂY DỰNG CÂY HUFFMAN

Trang 22

III Xây dựng cây Huffman

III XÂY DỰNG CÂY HUFFMAN

Trang 23

III Xây dựng cây Huffman

III XÂY DỰNG CÂY HUFFMAN

Trang 25

1

Trang 26

1

Trang 27

1

Trang 28

IV Mã hóa và giải mã

1

1

Trang 29

1

Trang 30

IV Mã hóa và giải mã

1

1

Trang 31

1

Trang 32

1

IV Nén và giải nén

Trang 33

1

Trang 34

1

Trang 35

COMPANY LOGO

V Cài đặt chương trình

V CÀI DẶT CHƯƠNG TRÌNH

Trang 36

Cảm ơn thầy và các bạn

đã chú ý theo dõi.

Thank You !

Ngày đăng: 19/10/2014, 21:33

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w