我在python中构建了一个小模块,它接受相同大小的字符串/缓冲区列表,并返回相同大小的xor字符串。然后,使用该字符串以及n-1字符串,我可以完成缺少的字符串。效果很好,所以我的问题是:
。
假设我有4个字符串:
a.“你好”
b.“视力”
c.“罗宾”
“关于”
是否有一种方法来构建一个大小相同(或稍大一点)的新字符串,如果我有这个字符串,并且还有两个字符串,例如'a‘和'b’,我可以完成'c‘和'd'?
发布于 2011-05-01 12:15:39
(1)这方面不大可能有一个已发表的模块。
(2)我认为您的意思是a ^ b ^ c ^ d == e,您问如果b和e的值已知,那么c和d的值是否可以恢复(“完成”)。这个问题的答案是否定的--你有一个含有两个未知数的方程。
更新在回答以下问题时回答“如果我正确地理解了您,没有比我做的XOR更好的解决方案了吗?”
不,我指出使用XOR只允许恢复一个缺失的字符串。您可能希望在网上搜索“纠错代码”。
发布于 2011-05-01 13:14:52
寻找这样的配对的算法很简单--对于每一个可能的“c”,找到匹配的“d”。你会得到很多解决方案的。显然,您不能得到单个对('c','d'),因为这样您就可以在两个字符串中切换一个位(两个字符串中的位都是相同的),并得到不同的解决方案。
https://stackoverflow.com/questions/5848147
复制相似问题