Найти классы эквивалентности из n-строчного текстового файла
У меня есть n-строчный текстовый файл:
1-е: 1,2,... 1,1
2-й: 1,2,... 0,1
3-е: 2,1,..., 1,0
4-е: 2,2,...., 0,1
....
n th: 1,2,...., 1,1
Каждая строка имеет 40 номеров, разделенных запятой. Эти числа индексируются от 1 до 40. Например, 1-я строка 1,2,...0,1; 1 индексируется 1, 2 индексируется 2, 0 индексируется 39, последний 1 индексируется 40.
Я хочу создать классы эквивалентности для каждого индекса, например
индекс 1: [1-й, 2-й][3-й, 4-й] [n-й]
индекс 2: [1-й, 2-й, 4-й, n-й][3-й]
указатель 39:[1-й,3-й, n-й] [2-й, 4-й]
указатель 40: [1, 2, 4, n][3]
Я думаю об использовании HashMap<Integer,List<String>>
но, таким образом, мне нужно сохранить 40 массивов в памяти. Это сложно, потому что текстовый файл немного большой (n = миллионы строк)
Поскольку я новичок в Java, я не знаю, эффективен ли вышеуказанный способ или нет? Или есть лучший способ добиться этого. Достаточно только идеи.
Большое спасибо.