作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我需要生成4 位
非重复 号码 - 即使我的应用程序关闭,生成的号码也不能重复。
我不想在任何存储中存储所有以前的数字。
有没有一种算法最有可能在一天内产生最多的唯一数字?
谢谢
最佳答案
不要生成随机数。相反,生成一个从 0000 到 9999 的序列号,然后使用 https://stackoverflow.com/a/34420445/56778 中描述的技术对其进行混淆处理。 .
这样,您唯一需要保存的就是下一个序号。
该示例使用逆乘法将 0 到 100 之间的数字映射到同一范围内的其他数字。从 0 到 100 的每个数字都将映射到 0 到 100 之间的唯一数字。它既快速又简单,您可以通过更改常量来更改映射。
更多信息请访问 http://blog.mischel.com/2017/06/20/how-to-generate-random-looking-keys/
关于java - 如何生成唯一的随机数,即使应用程序在一天内关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51408363/
我是一名优秀的程序员,十分优秀!