某一事件序列,如果采用霍夫曼编码,编码结果唯一吗

某一事件序列,如果采用霍夫曼编码,编码结果唯一吗
例如序列agdfaghdabsb,H树如下图,这个H树对吗
sy4155797 1年前 已收到1个回答 举报

闲客 幼苗

共回答了14个问题采纳率:78.6% 举报

采用霍夫曼编码,编码结果按正规的编码过程来说,是唯一的.
结点先按频次排序,相同的结点按结点值排序,过程中产生的虚结点排在实结点之后.
以上属于个人理解

1年前 追问

8

sy4155797 举报

能否帮我看下上面的H树错了吗?谢谢

举报 闲客

把我的两个回答结合起来研究一下吧 先计算频次 a 3 b 2 d 2 f 1 g 2 h 1 s 1 再排序(先频次 降序,再结点值 升序) a 3 b 2 d 2 g 2 f 1 h 1 s 1 各字符编码结果: 第一棵树: f(1)+h(1) = new_1(2) 第二棵树: s(1)+b(2) = new_2(3) 第三棵树: d(1)+g(2) = new_3(4) 第四棵树: new_1(2)+a(3) = new_4(5) 第五棵树: new_2(3)+new_3(4) = new_5(7) 第六棵树: new_4(5)+new_5(7) = root(12) root(12) / new_4(5) new_5(7) / / new_1(2) a(3) new_2(3) new_3(4) / / / f(1) h(1) s(1) b(2) d(1) g(2) 生成代码:(左0右1) f: 000 h:001 a:01 s:100 b:101 d:110 g:111

sy4155797 举报

你的H树和我的H树虽然不同,但码长都是33啊
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.351 s. - webmaster@yulucn.com