python Huffman树,pythonhuffman树,#!/usr/bin/p
文章由Byrx.net分享于2019-03-23 09:03:10
python Huffman树,pythonhuffman树,#!/usr/bin/p
#!/usr/bin/pythona = (45, 13, 12, 16, 9, 15)class Node(object): def __init__(self, weight = None, parent = None, left = None, right = None): self.weight = weight self.parent = parent self.left = left self.right = rightdef HuffmanTree(): HuffNode = [] #input weight for n in range(len(a)): HuffNode.append(Node(a[n], -1, -1, -1)) n = len(HuffNode) for i in range(n): m1 = m2 = 1000 x2 = x1 = 0 for j in range(n + i): if HuffNode[j].weight < m1 and HuffNode[j].parent == -1: m2 = m1 x2 = x1 m1 = HuffNode[j].weight x1 = j elif HuffNode[j].weight < m2 and HuffNode[j].parent == -1: m2 = HuffNode[j].weight x2 = j HuffNode[x1].parent = HuffNode[x2].parent = n + i HuffNode.append(Node(HuffNode[x1].weight + HuffNode[x2].weight, -1, x1, x2)) print 'x1.weight and x2.weight in round %d: %d, %d' % (i+1, HuffNode[x1].weight, HuffNode[x2].weight)if __name__ == "__main__": HuffmanTree()#该片段来自于http://byrx.net
相关内容
- 多线程socket压力测试,socket压力测试,#!/user/bin/
- 通过动态代理生成基于gfwlist的动态代理脚本,,#!/usr/
- Learn Python By Practice — 正则表达式,pythonpractice,'''Crea
- 用urllib按照百度音乐分类下载mp3,urllib百度音乐mp3,用
- 从1到10的循环方式改进,10循环方式改进,刚看到有人分
- 极具个性的命令行通讯录,极具命令行通讯录,极具个性
- Learn Python By Practice — 文件读写,,import sysim
- python查询电影信息(通过豆瓣),python豆瓣,通过pytho
- 一个简单的二叉树实现,简单二叉树实现,#!/usr/bin/e
- 使用python进行adsl拨号,pythonadsl拨号,import osg_a
评论关闭