python - 使用 n-1 个部分完成第 x 部分

标签 python algorithm math xor

我在 python 中构建了一个小模块,它采用相同大小的字符串/缓冲区列表,并返回相同大小的 xor 字符串。然后,使用该字符串以及 n-1 字符串,我可以补全缺失的字符串。 效果很好,所以我的问题是:

  1. 你知道一个已经为它制作的 python 模块吗?
  2. 有没有一种方法(实际上/理论上)我可以使用其他 n-2 个字符串来完成 2 个缺失的字符串:

假设我有 4 个字符串:

a. "hello"
b. "sight"
c. "robin"
d. "about"

有没有办法构建一个相同大小(或更大一点)的新字符串,如果我有那个字符串和 2 个字符串,例如 'a' 和 'b' 我可以完成 'c' 和 'd '?

最佳答案

(1) 不太可能为此发布模块。

(2) 我认为你的意思是 a ^ b ^ c ^ d == e,并且你问如果 c 和 d 的值可以恢复(“完成”) a b 和 e 的值是已知的。这个问题的答案是否定的——你有一个包含两个未知数的方程式。

更新以回应问题“如果我理解正确的话,没有比我做的异或事情更好的解决方案了吗?”

不,我是在指出使用 XOR 只能恢复一个丢失的字符串。您可能希望在网络上搜索“纠错码”。

关于python - 使用 n-1 个部分完成第 x 部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5848147/

相关文章:

python - 如何查看安装了哪个版本的nltk、scikit learn?

node.js - 检测有向图中的循环

Javascript 树搜索算法,返回包含找到的术语及其父项的树的子集

python - 了解欧几里得算法在 Python 中的 GCF 实现

python - 如何在 pytorch 中实现 Conv2d 的棋盘步幅?

python - 使用 Python 将图像转换为字符串?

Python 编码问题(可能是从 windows 到 linux 的问题)

java - 计费系统 - 编程

algorithm - 生成升序序列 2^p*3^q

java math.​mxparser 当参数名称为 "e"时返回 NaN