Структуры и алгоритмы обработки данных. Ключарев А.А - 38 стр.

UptoLike

38
новом, одномерном, описывается математически с помощью формулы,
преобразующей индексы матрицы в индексы вектора.
На практике для работы с разреженной матрицей разрабатываются
функции:
1) для преобразования индексов матрицы в индекс вектора;
2) для получения значения элемента матрицы из ее упакованного
представления по двум индексам (строка, столбец);
3) для записи значения элемента матрицы в ее упакованное пред-
ставление по двум индексам.
При таком подходе обращение к элементам матрицы выполняется с
помощью указанных функций. Например, пусть имеется двумерная раз-
реженная матрица, в которой все ненулевые элементы расположены в
шахматном порядке, начиная со второго элемента. Для такой матрицы
формула вычисления индекса элемента в линейном представлении бу-
дет следующей:
l = ((y – 1)·X
m
+ x)/2,
где lиндекс в линейном представлении; x, y – индексы соответствен-
но строки и столбца в двумерном представлении; X
m
– количество эле-
ментов в строке исходной матрицы.
1.2.8.2. Матрицы со случайным расположением элементов
К данному типу относятся матрицы, у которых местоположение
элементов со значениями, отличными от фонового, не могут быть
математически описано, т. е. в их расположении нет какой-либо за-
кономерности.
Пусть есть матрица A размерности 5×7, в которой из 35 элементов
только 10 отличны от нуля:
0060900
2007804
01000000
00210000
0003005
Один из основных способов хранения подобных разреженных мат-
риц заключается в запоминании ненулевых элементов в одномерном
массиве записей с идентификацией каждого элемента массива ин-