我第一次遇到问题,试图为字典间隙列表发布程序创建一个非常大的 int[][] (7k x 30k)。但可惜我尝试分配数组时空间不足。我如何创建一个二维整数数组?
我想要的是一个列表列表,其中列表中的每个列表都是整数列表。这是我的代码示例。
代码:
static final int numberOfTerms = 6782;
static final int numberOfLines = 30383;
byte[][] countMatrix = new byte[numberOfLines][numberOfTerms];
int[][] gapsMatrix = new int[numberOfLines][numberOfTerms]; // To big!!
这个列表列表将用整数填充,这些整数表示特定文本中同一单词两次出现之间的间隔。因此,在计数矩阵中,我保存一个字节,指示是否为指定索引指定了某个单词。然后,在我现在创建的函数中,我将遍历 countMatrix,如果我在那里找到一个字节,我将当前索引减去最后找到的索引,并将该数字保存在我的二维整数数组中,这给了我文本中每个相同单词之间的间隙。
那么我如何创建完成此任务所需的数据结构呢?
最佳答案
我不知道这是否适合您,但您可以尝试 Sparse Matrix如果你想坚持使用数组作为选项。还有其他几个选项。Map
、List
、弱引用集合
等
关于java - 整数链表的链表,Java。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12478372/