霍夫曼树 编码

来源:互联网 发布:网络经纪人安居客头像 编辑:程序博客网 时间:2024/06/05 16:16

根据小慧JJ的课件完成,用数组存储二叉树,Fun_encrypt_leaf()由叶子开始至根部编码,这个存储编码串时从尾部开始存储,对编码好的字符串进行拷贝时正好倒置

过来;fun_encrypt_recursion()从根部开始递归到叶子进行编码;fun_encrypt_onrecurent()非递归无栈从根部到叶子进行编码。思想都很强大,我是码农— —

bbb……

 


 

测试数据和编码结果:

Input:


8
a 12
b 3
c 4
e 67
f 56
g 2
h 10
i 100

Output:

a: 110
b: 10100
c: 101011
e: 111
f:  1011
g: 101010
h: 100
i:   0

Input:

5
a 1
b 2
c 3
d 4
e 5

Output:

a: 010
b: 011
c: 00
d: 10
e: 11

 

Input:

3
a 1
b 2
c 4

Output:

a: 00
b: 01
c: 1

ps:根据建树实现细节的不同,编码结果可能大同小异,可以无视……可以无视……

原创粉丝点击