2013-05-20 7 views
0

나는 허프만 인코딩 운동에서 어디로 갔는지 테스트하고있다. 내 테스트 파일에는 많은 빈도가 낮은 문자 (주로 빈도수 1)와 낮은 빈도의 문자가 있습니다. 인코딩 트리에서 읽은 내용을 테스트하고 있습니다. 19의 빈도를 갖는 숯은 6 비트를 가지며, 빈도가 10 인 숯은 3 비트를 가지며 빈도가 5 인 숯은 5 비트를 갖는 것으로 보인다. 이런 일종의 예외가 예상 되는가, 아니면 언제나 정확히 올바른 순서로되어야 하는가?허프만 압축의 빈도가 엄격해야합니까?

+5

고주파 문자는 비트가 아닌 비트를 더 소비하지 않아야합니까? – Jon

+0

맞아요. 꽤 큰 차이가있는 것처럼 보입니다. 19는 10보다 훨씬 더 나무 아래에 있어야합니다. 잎이 아닌 노드가 어떻게 생성되는지 또는 벗어나는 것과 관련이 있어야합니다. –

+0

일반적으로 옳습니다. 모든 저주파수 문자는 더 높은 비트 수를 갖습니다. 정상에 가깝게이 두 가지 유형의 이모가 있습니다. –

답변

0

구현에 오류가 있습니다. 동일한 비트 길이를 갖는 넓은 범위의 주파수를 가질 수 있지만, 주파수에 대해 비트 길이가 반대로되어서는 안됩니다.