首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >查找二维数组中列中的重复数

查找二维数组中列中的重复数
EN

Stack Overflow用户
提问于 2021-04-13 10:48:15
回答 1查看 31关注 0票数 0

我正在用数字制作一个数字宾果游戏板,我希望所有的数字都是唯一的。因此,我正在尝试创建一个算法,它将遍历列,找到重复的数字,然后将它们替换为两个特定数字之间的随机数字。

这就是我到目前为止所知道的:

代码语言:javascript
复制
public void bingoBoardGenrerator(int[][] bingoBoard) {
    for (int row = 0; row < bingoBoard.length; row++) {
        int random = (int) (Math.random() * 15) + 1;
        bingoBoard[row][0] = random;
        for (int j = 1; j < bingoBoard.length; j++) {
            if (bingoBoard[j][0] == random) {
                bingoBoard[row][0] = (int) (Math.random() * 15) + 1;
            }
        }

输出应如下所示,但列中没有重复的数字:

代码语言:javascript
复制
 Free space = 0

B   I   N   G   O   

5   25  36  53  61  
9   19  36  60  62  
1   17  0   54  63  
6   20  37  57  71  
5   19  39  57  69  

任何帮助都将不胜感激!

EN

回答 1

Stack Overflow用户

发布于 2021-04-13 10:52:15

对于"B“列:

  1. 使用整数1-15创建ArrayList
  2. 然后使用Collections.sort()随机化数字。
  3. 然后从ArrayList中提取前5个数字并将它们添加到您的Array

对I、N、G、O列重复上述步骤,每个列都使用适当的数字范围。

或者另一种方法(对于B)是:

创建一个随机数在1-15之间创建一个随机数,如果集合包含5个数字,则将该数字添加到Set.

  • Generate

  • 中。如果没有,请重复步骤2-4。

对其他列重复上述步骤。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67068075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档