Альтернативы для задач, связанных с индексацией очень большого массива, хранящего очень большие значения

1

Предложите несколько альтернатив для решения проблем, в которых решение грубой силы использует массивы с очень большим индексом и сохраняет очень большие значения (очень большие значения за пределами диапазона INT). Я использую Java для решения этой проблемы.

Проблема с образцом : выкладывание большого количества гальки в очень большую группу ведер, а затем вычисление средней гальки в каждом ковше.

Один из способов - объявить большой массив и продолжать размещать гальки в соответствии с индексами, указанными пользователем, а затем вычислять среднее значение. Но таким образом мы будем использовать большое пространство для такого массива.

  • 0
    Вы можете использовать некоторые файловые реализации Collection.
Теги:
arrays
data-structures
bigdata

1 ответ

3
Лучший ответ

Если массив разрежен, одним из параметров может быть Map индекса для значения.

Если все данные могут поместиться в память, индекс находится за пределами диапазона int, вы можете рассмотреть массив массивов. Первичный массив может содержать массивы размером, скажем 1000000000. 0-й индекс в этом массиве будет содержать значения 0-999999999, 1-й индекс, 1000000000-1999999999 и т.д.

Другая альтернатива - использование файлов. RandomAccessFile может помочь сделать это вручную, или могут быть некоторые библиотеки, которые предоставляют вам интерфейс массива и заботятся о RandomAccessFile файлов за кулисами.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню