Посещение всех записей Sparse Matrix в пакете org.apache.commons.math.linear - PullRequest
3 голосов
/ 17 августа 2010

Я вижу 2 реализации разреженной матрицы в этом пакете.

  1. OpenMapRealMatrix
  2. SparseFieldMatrix

Обе задокументированы как "реализация разреженной матрицы на основекарта с открытым адресом ".

Знаете ли вы, каковы различия между ними?также, каков наилучший способ быстрого перебора всех записей (что означает перебор ненулевых элементов).

Спасибо!

1 Ответ

1 голос
/ 25 апреля 2011

SparseFieldMatrix - это просто интерфейс, который реализуется классом OpenMapRealMatrix.

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

Из этой документации мне не ясно, как работает итерация для разреженной матрицы, которую вы хотите использовать. Там написано, что вы будете посещать все записи, но независимо от того, означает ли это только ненулевые или нет, я не уверен.

...