考虑五位二进制数:由五个比特组成的字符串,每个比特要么是1,要么是0。
两个数的“汉明距离”由它们对应比特中不同的位置数来决定。例如,01011和11001的距离是2,因为它们的第1位和第4位不同。那么01011和01100之间的距离是多少?
以二进制数来考虑,以01开头并且与00000的距离为3的最小数是什么?
以10开头,并且与00000以及上一个答案的距离都不小于3的最小数是什么?那么,以11开头并且与00000以及前两个答案的距离都不小于3的最小数又是什么?
最后,如何在00000和之前得到的三个答案后面加上第六位(1或0),使得这四个数之间任意两个数的距离都是4?
答案:01011和01100之间的距离是3。以01开头、与00000的距离为3的最小数是01011。以10开头、与00000和01011的距离≥3的最小数是10101。以11开头、与00000、01011和10101的距离≥3的最小数是11110。
对于第六位,可以加上0或1,使得0的个数和1的个数总是偶数,例如得到000000、010111、101011和111100。或者,你也可以让0和1的个数都为奇数。
(老 李)
考虑五位二进制数:由五个比特组成的字符串,每个比特要么是1,要么是0。
两个数的“汉明距离”由它们对应比特中不同的位置数来决定。例如,01011和11001的距离是2,因为它们的第1位和第4位不同。那么01011和01100之间的距离是多少?
以二进制数来考虑,以01开头并且与00000的距离为3的最小数是什么?
以10开头,并且与00000以及上一个答案的距离都不小于3的最小数是什么?那么,以11开头并且与00000以及前两个答案的距离都不小于3的最小数又是什么?
最后,如何在00000和之前得到的三个答案后面加上第六位(1或0),使得这四个数之间任意两个数的距离都是4?
答案:01011和01100之间的距离是3。以01开头、与00000的距离为3的最小数是01011。以10开头、与00000和01011的距离≥3的最小数是10101。以11开头、与00000、01011和10101的距离≥3的最小数是11110。
对于第六位,可以加上0或1,使得0的个数和1的个数总是偶数,例如得到000000、010111、101011和111100。或者,你也可以让0和1的个数都为奇数。
(老 李)