题目大意是给出一个字符串,默认每个字符用8位二进制数(ASCII编码)表示,求以前缀不重复编码压缩后表示字符串所需的最少二进制数位数。
题目中介绍的按频率进行前缀不重复编码的压缩思路其实就是哈夫曼编码的思路,因此只需要构建出一颗哈夫曼树,然后计算原字符串节点的WPL(带权路径长度)即可。构建哈夫曼树的算法是:
- 首先把 n 个叶子结点看做 n 棵树(仅有一个结点的二叉树),把它们看做一个森林。
- 在森林中把权值最小和次小的两棵树合并成一棵树,该树根结点的权值是两棵子树权值之和。这时森林中还有 n-1 棵树。
- 重复第2步直到森林中只有一棵为止。此树就是哈夫曼树。
此外如果需要求具体的字符编码(即哈夫曼编码),则在树中令所有左分支取编码为 0 ,令所有右分支取编码为1。将从根结点起到某个叶子结点路径上的各左、右分支的编码顺序排列,就得这个叶子结点所代表的字符的二进制编码。
7794475 IwfWcf 1521 Accepted 756K 16MS G++ 1594B 2010-10-26 23:05:44
qihang0710cheap jordans for sale
回复删除longchamp handbags
oakley sunglasses sale
ray ban uk
nike air force 1
snabacks wholesale
michael kors handbag
abercrombie
michael kors outlet
ralph lauren uk
burberry outlet online
kate spade outlet online
gucci uk
coach factory outlet
christian louboutin sale
cheap jordans
borse gucci
tory burch outlet
christian louboutin
mont blanc pens
tory burch handbags
coach outlet
true religion sale
chaussure louboutin
replica watches cheap
ralph lauren
louis vuitton
true religion jeans
nike blazer
michael kors handbags
mcm handbags
cheap oakley sunglasses
hollister clothing store
jordan uk
pandora rings
pandora jewelry
fitflops sale clearance
q
hermes birkin, http://www.hermesbirkin.org/
回复删除chanel outlet, http://www.chaneloutletstore.us.com/
nike free uk, http://www.nikefreerunning.org.uk/
ray ban sunglasses, http://www.raybansunglass.com.au/
rolex watches, http://www.rolexwatches.in.net/
ray ban sunglasses, http://www.ray-bansunglasses.eu.com/
yoga pants, http://www.yogapants.us.com/
beats headphones, http://www.beats-headphones.in.net/
michael kors outlet, http://www.michaelkorsusa.us/
pandora jewelry, http://www.pandora.eu.com/
cheap ugg boots, http://www.cheapuggboots.net.co/
air jordan shoes, http://www.airjordanshoes.us.org/
louis vuitton outlet, http://www.louisvuittonus.us.com/
ed hardy clothing, http://www.edhardy.us.com/
replica handbags, http://www.replicahandbag.us.com/
the north face outlet store, http://www.thenorthfaceoutletstores.org/
tiffany jewellery, http://www.tiffanyjewelleryoutlets.co.uk/
lebron james shoes, http://www.lebronjamesshoes.in.net/
gucci handbags, http://www.guccihandbags-outlet.co.uk/
true religion outlet, http://www.truereligionoutletstore.us.com/
swarovski jewelry, http://www.swarovski.in.net/
michael kors outlet, http://michaelkors.outletonlinestores.us.com/
swarovski outlet, http://www.swarovski-outlet.co.uk/
wedding dresses, http://www.weddingdressesoutlet.co.uk/
louis vuitton handbags, http://www.louisvuittonhandbagsoutlet.co.uk/
lebron james shoes, http://www.lebronjames.us.com/
nike trainers, http://www.niketrainers.me.uk/
kobe shoes, http://www.kobeshoes.us/
cheap snapbacks, http://www.cheapsnapbacks.us.com/
1003maoqiuyun
151207meiqing
回复删除oakley sunglasses wholesale
michael kors outlet clearance
ugg australia
chanel bags
michael kors outlet stores
michael kors outlet
michaek kors outlet
prada outlet
canada goose jackets
ugg clearance
ugg outlet
replica watches
louis vuitton outlet
oakley sunglasses
canada goose outlet
kate spade handbags
louis vuitton handbags
abercrombie fitch
uggs on sale
celine
adidas originals
pandora jewelry
ray ban sunglasses outlet
michael kors bag
michael kors outlet online
uggs outlet
gucci shoes
coach outlet store online
ugg boots
cheap jordans
coach outlet
coach outlet
cheap uggs
michaek kors handbags
uggs for sale
supra shoes
uggs australia
ray-ban sunglasses
toms shoes
michael kors outlet online
ralph lauren outlet
回复删除adidas trainers uk
louis vuitton outlet
tory burch outlet online
oakley sunglasses outlet
louis vuitton outlet
canada goose jackets
ray ban clubmaster
louis vuitton handbags
louis vuitton
201612.26chenjinyan
timberland boots
回复删除flip flops
pandora jewelry
adidas slides
ugg australia
asics
marc jacobs
adidas zx
jerseys
swarovski uk
2018.2.28xukaimin
have a peek at this site cheap designer bags replica blog here this contact form blog buy replica bags
回复删除