프리픽스가없는 인코딩의 요구는 트리가 완료되어야하기 때문에 큰 트리를 초래한다. 고정 길이의 비 인코딩 된 데이터 스토리지가 데이터를 인코딩하는 것보다 더 효율적인 임계 값이 있습니까?
일반적으로 '아니오'. 평균 데이터의 경우 각 문자의 빈도는 1보다 크며 고정 길이 코드 대신 허프만 인코딩을 사용하는 것이 좋습니다
프리픽스가없는 인코딩의 요구는 트리가 완료되어야하기 때문에 큰 트리를 초래한다. 고정 길이의 비 인코딩 된 데이터 스토리지가 데이터를 인코딩하는 것보다 더 효율적인 임계 값이 있습니까?
답변:
H(A)이 문제 의 엔트로피 는 1.998입니다. 이 문제에 대한 허프만 코딩과 고정 길이 코딩의 평균 코드 워드 길이는 2입니다. 참고로 허프만 인코딩을 사용하여 얻은 코딩이 잘못되었습니다. 허프만 인코딩은이 문제에 대해 고정 길이와 유사한 코드를 생성합니다. 탐욕스러운 접근 방식을 사용합니다. 따라서 a코드를 0얻지 않고 대신 가져옵니다 00. 허프만 코딩을 사용하여 생성 한 트리에서 재 작업하십시오. 당신이 얻을 나무는 :
허프만 코딩은 2 개의 거듭 제곱으로 모집단 분포를 추정합니다. 실제 분포가 두 확률의 거듭 제곱으로 구성되고 입력 기호가 완전히 상관되지 않은 경우 허프만 코딩이 최적입니다. 그렇지 않으면 범위 인코딩으로 더 잘 수행 할 수 있습니다. 그러나 특정 비트 세트를 입력의 특정 심볼에 할당하는 것은 모든 인코딩 중에서 최적입니다.
예, 항상 최적입니다.
아니요, 고정 길이의 비 인코딩 된 데이터를 사용하기 위해 더 적은 공간을 사용하는 임계 값은 없습니다.
웹에서 여러 가지 증거를 찾았지만 Wikipedia 기사 Huffman coding 에 충분한 토론이 있습니다.
여기에는 더 높은 압축률을 달성하는 다른 기술 (Huffman 코드가 최적의 공간 밖에서 작업)도 포함됩니다.