算法 数字分配问题 一元夺宝分配开奖号

发布于 2021-11-28 18:37:45 字数 79 浏览 891 评论 6

有一个算法问题:   一组有序数字,每个人随机分配多个,不能重复分配   模拟场景: 一元夺宝 下单分配开奖号

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

旧伤慢歌 2021-12-04 20:25:10

我做过,提前生成好,每次用户来拿就用行锁来分配。

风柔一江水 2021-12-04 14:43:06

方式有很多哈!

我这边的搞法是:

提前生成开奖号,随机,然后保存进数据库!

有人付款的时候 按个数分配!

裸钻 2021-12-04 05:51:09

如果有更好的方法 @ 一下我 我也学习一下

反话 2021-12-03 17:36:08

java 

一种思路:有序数字存放到 list 当中,每次随机取出 list 中的一个元素(随机生成一个0到 list.size()之间的数字即可),并移除当前元素,并做记录,开奖之后直接查询即可 [需要几个就取几次]

另一种思路:打乱数字顺序,放到队列中,从队列一端pop元素,并做记录,开奖查询即可

柒夜笙歌凉 2021-12-01 17:56:02

1:生成1000个随机数,保存至数据库或其它地方,USER_ID为0

2:取出USER_ID为0的N个随机数,开始分配,分配完成后,记录USER_ID为持有者的ID,并更新数据源

傾城如夢未必闌珊 2021-12-01 08:02:32

提前生成好全部的不重复数字并将其保存下来,当有人来认领的时候顺序分配即可。

考虑的方向不要从每次有人认领时即时生成不重复数字切入,而是从先生成好不重复数字,后顺序按指定量分配。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文