엔지니어가 되고 싶은 공돌이

06. Data Compression 본문

Computer Science/File Structure

06. Data Compression

Geca 2025. 2. 20. 19:00

 

6. 1. Data Compression

 

- 저장공간을 절약하고, 전송시간을 단축시키는 방법에는 무엇이 있을까?

 

 

1) Run-Length Encoding

 

- Definition: 반복되는 데이터를 압축시켜서 ff, value, count로 표현.

 

ex) 15 16 17 17 17 17 17 17 17 17 18 19 20 20 20 20 20 20 20 21 22.

 

       Compression -> 15 16 ff 17 08 18 19 ff 20 07 21 22.

 

- 무분별하게 사용하게 되면, 원래의 데이터보다 더 커질 수 있습니다.

 

 

2) Huffman Code

 

- Definition: 파일 내에서 문자마다 출현빈도가 다르다는 사실에 착안하여,

 

   빈도가 높은 문자에는 적은 자리수의 코드를,

 

   빈도가 낮은 문자에는 상대적으로 많은 수의 코드를 부여하는 방법.

 

 

- Variable Length Code.

 

  1) 각 문자의 Occurrence Probability에 따라 Descending Order로 정리합니다.

 

  2) Algorithm에 따라 Probability를 더해가며 1.0 을 만듭니다.

 

  3) 각 문자에 대하여 Huffman Code를 정의합니다.

 

ex) a = 0.19, b = 0.23, c = 0.12, d = 0.17, e = 0.05, f = 0.08, g = 0.16.

 


'Computer Science > File Structure' 카테고리의 다른 글

08. Index  (0) 2025.02.22
07. Placement Strategies and Binary Search  (0) 2025.02.20
05. Record Search and Insert  (0) 2025.02.20
04. Field and Record  (0) 2025.02.17
03. Computer Storage Devices  (0) 2025.02.14
Comments