gpt4 book ai didi

string - 将 5 个字符的字符串编码为唯一且可重复的 32 位整数

转载 作者:行者123 更新时间:2023-12-01 07:16:22 25 4
gpt4 key购买 nike

我还没有考虑这么多,所以我可能会成为一个愚蠢的问题。

如何将唯一的 5 个 ASCII 字符串转换为唯一且可重现(即每次都需要相同)的 32 位整数?

有任何想法吗?

最佳答案

假设它实际上是 ASCII(即没有序数值大于 127 的字符),则您有 5 个 7 位字符或 35 位信息。没有办法从保证唯一的 35 位生成 32 位代码;您缺少三位,因此每个代码还将代表 7 个其他有效的 ASCII 字符串。但是,您可以通过小心计算代码的方式使非常非常不可能看到冲突,以便非常相似的输入字符串具有非常不同的代码。我看到另一个答案建议使用 CRC-32。您还可以使用哈希函数,例如 MD5 或 SHA-1,并且仅使用前 32 位;这可能是最好的,因为哈希函数是专门为此目的设计的。

如果您可以进一步限制输入字符串的值(例如,只有字母数字、没有小写、没有控制字符或类似的东西),您可能可以消除这些额外的数据并为每个字符串生成有保证的唯一 32 位代码。

关于string - 将 5 个字符的字符串编码为唯一且可重复的 32 位整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3702051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com