gpt4 book ai didi

java - 比较数字还是使用质数?

转载 作者:行者123 更新时间:2023-11-29 05:42:09 25 4
gpt4 key购买 nike

我正在编写一个生成宾果卡号的程序。宾果卡由 5 列组成,每列 4 个数字。因为第一列只能包含数字 1-8,第二列只能包含数字 9-16,依此类推(最多 40)。

所以在数据库中,我所做的是为此准备了两个表。第一个表是列号。每列包含一组唯一的数字(每列 70 组,即 8 取 4 的组合)。对于 5 列,我将有 350 套。第二个表是卡号。它由 5 列组成,每列对应 B、I、N、G、O 的行。总共有 1,680,700,000。此表的可能组合。我这样做是因为每场比赛每张牌都是重复的,只有牌的控制号是唯一的。

我想跟踪每个开奖号码的中奖牌。我需要尽可能快地进行跟踪,因为在这里谈论数百万张卡片。我想到了 2 个选项:

首先,检查每个开奖号码是否存在于牌上,尽量减少每次开奖的牌库。

其次,为每个数字 (1-40) 关联一个唯一的素数,将它们相乘并将乘积关联到列(我称之为素数索引)。每列的 5 个主要索引相乘,乘积与每张卡片/组合相关联(我称之为卡片索引)。当抽到一个数字时,相关的素数从卡片索引中除以,检查抽取的数字是否是卡片索引的一个因素。每次连续抽取都会减少卡片索引(对于池中的每张卡片),如果存在获胜卡片,则减少到 1。我将使用 MySQL 和 Java。这两种技术中哪一种是更快的方法?我也会考虑内存空间、负载等,但对我来说更重要的是跟踪速度。非常感谢!

附言很抱歉解释很长。我只是想澄清一下。 :D

最佳答案

如果您想要真正的快,只需在需要时将您的 2400 万张卡片保存在内存中,然后进行简单的比较即可。为此使用数据库是矫枉过正,只会让一切变得更加困难。 RAM 不再昂贵。

关于java - 比较数字还是使用质数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5883898/

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