Дана N * N матрица. Задача состоит в том, чтобы преобразовать матрицу в диагональную матрицу . То есть изменить значения недиагональных элементов матрицы на 0.
Диагональная матрица : матрица называется диагональной матрицей, если все недиагональные элементы матрицы равны нулю.
Примеры:
Input : mat[][] = {{ 2, 1, 7 }, { 3, 7, 2 }, { 5, 4, 9 }} Output : {{2, 0, 7}, {0, 7, 0}, {5, 0, 9}} Input : mat[][] = {{1, 3, 5, 6, 7}, {3, 5, 3, 2, 1}, {1, 2, 3, 4, 5}, {7, 9, 2, 1, 6}, {9, 1, 5, 3, 2}} Output : {{1, 0, 0, 0, 7}, {0, 5, 0, 2, 0}, {0, 0, 3, 0, 0}, {0, 9, 0, 1, 0}, {9, 0, 0, 0, 2}}
Обходите все недиагональные элементы матрицы, используя два вложенных цикла, как показано в приведенном ниже коде, и обнуляйте их.
Ниже приведена программа для обнуления всех недиагональных элементов матрицы:
|
Джава
|
python3
|
C #
|
PHP
|
Выход:
2 0 7 0 7 0 5 0 9
Временная сложность: O (n * m)
Рекомендуемые посты:
- Программа для преобразования диагональных элементов матрицы в 0
- Программа для проверки диагональной матрицы и скалярной матрицы
- Программа C ++ для преобразования матрицы в разреженную матрицу
- Программа для замены элементов верхней диагонали на элементы нижней диагонали матрицы.
- Заполнение диагонали, чтобы сделать сумму каждой строки, столбца и диагонали равной 3×3 матрицы
- Минимальные шаги, необходимые для преобразования матрицы в нижнюю матрицу Гессенберга
- Минимальное количество шагов для преобразования данной матрицы в верхнюю матрицу Гессенберга
- Минимальное количество шагов для преобразования данной матрицы в диагонально-доминантную матрицу
- Конвертировать данную Матрицу в отсортированную Спиральную Матрицу
- Зеркало матрицы по диагонали
- Квадраты матричных диагональных элементов
- Зигзагообразный (или диагональный) обход матрицы
- Распечатать матрицу по диагонали
- Обратные диагональные элементы матрицы
- Программа для проверки, является ли матрица двоичной матрицей или нет
0.00 (0%) 0 votes