본문 바로가기
programing/Algorithm

허프만 코드

by RedWiz 2015. 6. 5.

- 길이가 변하는 이진 코드(variable-length binary code)

 

- 전치 코드

> 빈도대로 정렬한 다음 빈도가 클 수록 길이가 짧음

-> 빈도에 대해 최적화가 덜 됨 => 허프만 코드

 

- 허프만 코드

> 낮은 빈도순으로 정렬한 다음 가장 낮은 빈도부터 이진 트리를 만들어 나감

> 트리가 만들어 질 경우 노드들의 빈도의 합을 가지고 트리와 원소를 같이 정렬하여 다시 가장 낮은 비도 부터 트리를 만들어 나감

> 알고리즘 만들때 우선순위 큐 이용