关注
作者:Roronoa_Zzoro 链接:https://www.nowcoder.com/discuss/118895?toCommentId=2002519 来源:牛客网 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 list2=[] list3=[] classNode(object): def__init__(self,name=None,value=None): self._name=name self._value = value self._left=None self._right = None classHuffmanTree(object): def __init__(self, char_weights): self.a=[Node(part[0],part[1])forpart in char_weights] whilelen(self.a)!=1: self.a.sort(key=lambda node:node._value,reverse=True) c=Node(value=(self.a[-1]._value+self.a[-2]._value)) c._left=self.a.pop(-1) c._right=self.a.pop(-1) self.a.append(c) self.root=self.a[0] self.b=range(10) def pre(self,tree,length): node=tree if(not node): return elif node._name: list1='' fori in range(length): list1+=str(self.b[i]) list2.append(node._name) list3.append(list1) return self.b[length]=0 self.pre(node._left,length+1) self.b[length]=1 self.pre(node._right,length+1) def get_code(self): self.pre(self.root,0) if__name__=='__main__': dic=[] i = raw_input() forj in set(i): dic.append((j,i.count(j))) char_weights=dic tree = HuffmanTree(char_weights) tree.get_code() r='' forl in i: form in range(len(list2)): ifl==list2[m]: r+=str(list3[m]) print r # # abbcccdddd #1101111111010100000 测试用例 为什么和我的不一样,求大佬告知!
查看原帖
点赞 评论
相关推荐
10-30 18:20
第一拖拉机制造厂拖拉机学院 C++
牛客41406533...:回答他在课上学,一辈子待在学校的老教授用三十年前的祖传PPT一字一句的讲解,使用谭浩强红皮书作为教材在devc++里面敲出a+++++a的瞬间爆出114514个编译错误来学 点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 秋招落幕,你是He or Be #
819次浏览 32人参与
# 应届生进小公司有什么影响吗 #
108362次浏览 1105人参与
# 重来一次,你会对开始求职的自己说 #
1430次浏览 33人参与
# 实习没事做是福还是祸? #
5490次浏览 83人参与
# 一人说一个提前实习的好处 #
1846次浏览 28人参与
# 团建是“福利”还是是 “渡劫” #
2654次浏览 63人参与
# 你小心翼翼的闯过多大的祸? #
5271次浏览 81人参与
# OPPO求职进展汇总 #
755641次浏览 5390人参与
# 工作中听到最受打击的一句话 #
1117次浏览 17人参与
# 今年你最想重开的一场面试是? #
871次浏览 17人参与
# 今年形式下双非本找得到工作吗 #
266043次浏览 1541人参与
# 公司情报交流地 #
127247次浏览 1232人参与
# 实习简历求拷打 #
25985次浏览 257人参与
# 从顶到拉给所有面过的公司评分 #
144536次浏览 516人参与
# 面试尴尬现场 #
209209次浏览 851人参与
# 投格力的你,拿到offer了吗? #
155361次浏览 829人参与
# 作业帮求职进展汇总 #
85846次浏览 559人参与
# 正在实习的你,有转正机会吗? #
465922次浏览 3063人参与
# 职场新人生存指南 #
488286次浏览 9511人参与
# 哪些公司笔/面试难度大? #
7117次浏览 32人参与
