ВУЗ:
Составители:
Рубрика:
- 14 -
1
5
9
4
3
7
10
:
JC
3.3. Сложение РМ
Пусть на входе заданы две РМ
)
(
,
m
n
B
А
×
в неупорядоченном
РСФ . На выходе требуется получить
B
А
C
+
=
в том же формате .
Для решения этой задачи нам потребуется вспомогательный ЦМП
Y
и
РВН
X
. Размерность этих массивов равна числу столбцов
A
и
B
:
m
X
Y
=
=
dim
dim
. В основе алгоритма лежит идея поочередного сложения
строк матриц
A
и
B
как РВ с помощью РВН.
Алгоритм
1. Символический этап
(формирование
IC
JC
,
)
0
1
.
1
=
i
(номер строки).
0
2
. С помощью
JA
IA
,
и
JB
IB
,
определяем списки, соответствующие
i
-м строчкам матриц
A
и
B
и сливаем эти списки методом ПП с
помощью ЦМП
Y
. Список, полученный в результате слияния, помещаем в
1-ю свободную позицию массива
JC
.
0
3
. Полагаем
1
+
=
i
i
и идем на
0
2
. Повторяем действия до тех пор, пока
n
i
≤
. В результате получаем
JC
.
0
4
. Для получения
IC
достаточно на каждом этапе запоминать первую
свободную позицию
JC
.
2. Численный этап
(последовательное сложение строк
B
А
,
с помощью
РВН)
0
1
.
1
=
i
.
0
2
. С помощью
IC
JC
,
определяем список, полученный в результате
слияния списков столбцовых индексов
i
-й строки массивов
JA
и
JB
.
0
3
. С помощью этого списка и РВН
X
складываем
i
-е строки матриц
A
и
B
, как РВ . Результат сложения помещаем в текущие свободные
позиции вектора
CN
в соответствии с порядком столбцов из
JC
.
0
4
.
1
+
=
i
i
и идем на
0
2
. Повторяем действия до тех пор, пока
n
i
≤
. В
результате получим
CN
.
Замечание . После каждого сложения строк РВН
X
должен быть приведен
в нулевое состояние .
Задача 20. Даны две матрицы
B
А
,
. Найти
B
А
C
+
=
.
;
9731:
4261543153:
1112733412:
−
−
−
IA
JA
AN
- 14 - JC : 10 7 3 4 9 5 1 3.3. Сложение РМ Пусть на входе заданы две РМ А, B ( n ×m) в неупорядоченном РСФ. На выходе требуется получить C =А +B в том же формате. Для решения этой задачи нам потребуется вспомогательный ЦМП Y и РВН X . Размерность этих массивов равна числу столбцов A и B : dim Y =dim X =m . В основе алгоритма лежит идея поочередного сложения строк матриц A и B как РВ с помощью РВН. Алгоритм 1. Символический этап (формирование JC, IC ) 10 . i =1 (номер строки). 2 0 . С помощью IA, JA и IB, JB определяем списки, соответствующие i -м строчкам матриц A и B и сливаем эти списки методом ПП с помощью ЦМП Y . Список, полученный в результате слияния, помещаем в 1-ю свободную позицию массива JC . 30 . Полагаем i =i +1 и идем на 2 0 . Повторяем действия до тех пор, пока i ≤n . В результате получаем JC . 4 0 . Для получения IC достаточно на каждом этапе запоминать первую свободную позицию JC . 2. Численный этап (последовательное сложение строк А, B с помощью РВН) 10 . i =1 . 2 0 . С помощью JC, IC определяем список, полученный в результате слияния списков столбцовых индексов i -й строки массивов JA и JB . 30 . С помощью этого списка и РВН X складываем i -е строки матриц A и B , как РВ. Результат сложения помещаем в текущие свободные позиции вектора CN в соответствии с порядком столбцов из JC . 4 0 . i =i +1 и идем на 2 0 . Повторяем действия до тех пор, пока i ≤n . В результате получим CN . Замечание. После каждого сложения строк РВН X должен быть приведен в нулевое состояние. Задача 20. Даны две матрицы А, B . Найти C =А +B . � AN : 2 −1 4 3 3 7 −2 −1 1 1 � � JA : 3 5 1 3 4 5 1 6 2 4 ; � IA : 1 3 7 9 �
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »