繁体   English   中英

如何确保由字母字符组成的小字符串没有冲突

[英]How to make sure a small string made of alphabet chars have no collision

例如:

假设我可以有一个长度为 4 的字符串,由 26 个字母字符组成。

所以总共可以有 26^4(大约 456976)个不同的排列。

我怎样才能将这些字符串 map 转换为 0 到 456976 范围内的唯一 integer。

比如:aaaa -> 0 aaab -> 1... ...

Base-26 可能是你的朋友。

如果您想要您描述的 1:1 映射,则相当简单:

  • Map a到 0, b到 1... z到 25
  • 将您的字符串视为 base-26 数字系统:
    aaaa == 0000 ,十进制为 0
    zzzz = 25 * 26 ^ 3 + 25 * 26 ^ 2 + 25 * 26 + 25十进制为 456 975,

这表明我们涵盖了独特排列的整个范围 - 按字母顺序启动。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM