Algorithm 69

[알고리즘] 탐욕법 - 허프만 코드 (Greedy Approach - Huffman Code)

1. 데이터 압축 문제 (The problem of data compression) 데이터 파일을 효율적으로 encoding 하기 위한 방법을 찾아내는 문제입니다. 데이터 파일은 통상적으로 이진 코드 (binary code)로 표현됩니다. 또한 각각의 이진 문자열은 코드 워드 (code word)라는 유일한 이진 코드로 표현됩니다. 이때 "ababcbbbc"라는 문자열이 있다고 가정하면, 문자의 집합은 {a, b, c}가 됩니다. 이때 이 문자열을 이진 코드로 표현하는 방법이 있습니다. 1.1 길이가 고정된 이진 코드 (fixed-length binary code) 길이가 고정된 이진 코드는 각각의 문자를 표현하는 비트의 개수가 일정합니다. {a, b, c}를 표현하기 위해서는 단지 3개의 비트만 있으면..