2014-12-13 52 views
0

一个包包含16个以下颜色的球:8红色,4蓝色,2绿色,1黑色和1白色。 Anisha从包里随机挑选一个球,并使用一串零和一个字符串给Babu发送它的颜色。她将袋子中的球取代并多次重复该实验。每个实验必须传达给巴布的最短预期长度是多少?
的(a)3/2 (b)中记录5 (c)中15/8 (d)31/16 (E)2消息的最短可预期长度

据我,由于球取出与更换。在任何时候,袋子里都有16个不同颜色的球。为了编码5种颜色,应该需要log5(基数2)的上限,即3位,但给出的答案是(15/8)。有人能指出我的错误,并提供正确解决方案的一些提示吗?

+0

你的错误是张贴在网站上编程。请考虑重新发布此http://math.stackexchange.com/ – kinbiko 2014-12-13 08:55:42

回答

2

使用静态霍夫曼压缩,您可以使用比罕见颜色更少的位对更常见的颜色进行编码,这种情况下可以预期通常会选择常用颜色。

如:

red 1 
blue 01 
green 001 
white 0001 
black 0000 

平均为16平会有

8 reds = 8 bits 
4 blues = 8 bits 
2 greens = 6 bits 
1 white = 4 bits 
1 black = 4 bits 

的平均

0

你的回答共30/16位是正确的最大值编码需要。但考虑下面的编码方案1-红(1/2概率),01-蓝(1/4概率),00-绿(1/8概率),001-黑(1/16概率),000-白( 1/16概率)乘以概率的消息长度,你应该有1 + 5/8(不是15/8 ...虽然)

+0

似乎不正确,如果A.发送001是绿色后面是红色,还是黑色? – Jasen 2014-12-14 03:34:55

+0

您的问题让我们了解到沟通渠道细节,可靠的信息传递和错误检测/纠正码。考虑像0/1编码这样的莫尔斯码,消息之间保持沉默 - Anisha的实验并不是即时的。对于“纯粹的”最小平均消息长度,我仍然会考虑具有最小消息概率的消息集{0,1,00,01,000}。 – lonewasp 2014-12-18 20:35:19