C++程序 检查矩阵是否为下三角形
给定一个方阵,任务是检查该矩阵是否为下三角形。如果所有主对角线上面的条目均为零,则称方阵为下三角形。
示例:
Input : mat[4][4] = {{1, 0, 0, 0},
{1, 4, 0, 0},
{4, 6, 2, 0},
{0, 4, 7, 6}};
Output : 矩阵为下三角形。
Input : mat[4][4] = {{1, 0, 0, 0},
{4, 3, 0, 1},
{7, 9, 2, 0},
{8, 5, 3, 6}};
Output : 矩阵不是下三角形。
// 程序检查下三角形矩阵。
#include <bits/stdc++.h>
#define N 4
using namespace std;
// 检查矩阵是否为下三角形。
bool isLowerTriangularMatrix(int mat[N][N])
{
for (int i = 0; i < N; i++)
for (int j = i + 1; j < N; j++)
if (mat[i][j] != 0)
return false;
return true;
}
// 驱动程序。
int main()
{
int mat[N][N] = { { 1, 0, 0, 0 },
{ 1, 4, 0, 0 },
{ 4, 6, 2, 0 },
{ 0, 4, 7, 6 } };
// 调用函数
if (isLowerTriangularMatrix(mat))
cout << "是";
else
cout << "否";
return 0;
}
输出:
是
时间复杂度: O(n 2 ), 其中n表示矩阵的行数和列数。
辅助空间: O(1),不需要额外空间,因此为常数级别。