Javascript程序查找两条对角线之和之间的差异
给定一个n X n的矩阵。任务是计算其对角线之和之间的绝对差。
例子:
Input : mat[][] = 11 2 4
4 5 6
10 8 -12
Output : 15
Sum of primary diagonal = 11 + 5 + (-12) = 4.
Sum of primary diagonal = 4 + 5 + 10 = 19.
Difference = |19 - 4| = 15.
Input : mat[][] = 10 2
4 5
Output : 7
计算一个方阵的两条对角线的和。沿着矩阵的第一条对角线,行索引 = 列索引,即如果 i = j,则 mat[i][j] 位于第一条对角线上。沿着另一条对角线,如果 i = n-1-j,行索引 = n – 1 – 列索引,即 mat[i][j] 位于第二条对角线上。通过使用两个循环,我们遍历整个矩阵并计算矩阵对角线的总和。
下面是这种方法的实现:
Javascript
Javascript
输出:
15
时间复杂度: O(n*n)
我们可以使用单元格索引中存在的模式优化上述解决方案以在 O(n) 中工作。
Javascript
输出:
15
时间复杂度: O(n)
有关详细信息,请参阅有关查找两条对角线之和之间的差异的完整文章!