<分区>
我有一个问题我应该使用递归来解决:
汉明距离。长度为n
的两个位串之间的汉明距离等于两个串不同的位数。编写一个程序,从命令行读取一个整数k
和一个位串s
,打印出所有从到汉明距离最大为k的位串s
。例如,如果 k
是 2
而 s
是 0000
那么你的程序应该打印出来:
0011 0101 0110 1001 1010 1100
提示:选择s
中的N
位中的k
位进行翻转。
我不知道从哪里开始有人能给我指出正确的方向吗?
<分区>
我有一个问题我应该使用递归来解决:
汉明距离。长度为n
的两个位串之间的汉明距离等于两个串不同的位数。编写一个程序,从命令行读取一个整数k
和一个位串s
,打印出所有从到汉明距离最大为k的位串s
。例如,如果 k
是 2
而 s
是 0000
那么你的程序应该打印出来:
0011 0101 0110 1001 1010 1100
提示:选择s
中的N
位中的k
位进行翻转。
我不知道从哪里开始有人能给我指出正确的方向吗?
最佳答案
要以递归方式解决问题,您需要做一些少量的工作,将其分解为一个类似但更小的问题。
在你的例子中,你有一个字符串,即一个字符序列。在 k 处与 S 不同的字符串集由一些首先与 S 一致或不一致的字符串组成。这有帮助吗?
关于python - 通过递归的汉明距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13020029/