Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Api 14位(数字)的唯一生成_Api_Random_Key_Java - Fatal编程技术网

Api 14位(数字)的唯一生成

Api 14位(数字)的唯一生成,api,random,key,java,Api,Random,Key,Java,我需要最好的算法或API来生成14个数字,这些数字是唯一标识的,可能达到0就有重复。这一代人的数量大约是一年中的12倍,数量为1000万,因此总数将达到1.2亿 如果从固定范围的整数中随机选择数字,则重复的概率不是零 如果您想要难以猜测且唯一的数字,则需要: 一个好的随机数发生器,和 用于保存以前生成的所有数字的数据库(或类似数据库) 算法(伪代码)为: “达到0的可能性有重复”这不是随机的;因为随机发生器将有一个1英寸的返回任意数字的时间。。。这意味着在5亿的范围内,最后一个数字有120/

我需要最好的算法或API来生成14个数字,这些数字是唯一标识的,可能达到0就有重复。这一代人的数量大约是一年中的12倍,数量为1000万,因此总数将达到1.2亿

如果从固定范围的整数中随机选择数字,则重复的概率不是零

如果您想要难以猜测且唯一的数字,则需要:

  • 一个好的随机数发生器,和
  • 用于保存以前生成的所有数字的数据库(或类似数据库)
算法(伪代码)为:


“达到0的可能性有重复”这不是随机的;因为随机发生器将有一个1英寸的返回任意数字的时间。。。这意味着在5亿的范围内,最后一个数字有120/500的复制机会number@saka1029谢谢,伙计,但不,我需要14digits@UKMonkey我同意你的看法,它不是随机的,你知道生成唯一14位的算法吗?一次随机生成1位怎么样?假设所有数字都是0-9,那么应该得到一个相当合理的分布。如果你真的需要它们是唯一的,正如StephenC所说,你需要记录并检查它们。谢谢,但正如我前面提到的,有大量记录,我不希望每次生成一个数字时都检查它是否存在超过1.2亿条记录。你听说过索引吗?你不需要每次检查1.2亿条记录。
while (true) {
    number = generate();
    if (!lookupInDatabase(number)) {
        recordInDatabase(number);
        return number;
    }
}