使用Python在按行和按行排序的矩阵中计算负数?

在本节中,我们将看到一个python程序,该程序以最佳解决方案对按行和按列排序的矩阵中的负数进行计数。

按行和按列排序的数组意味着,任何索引处的每个值都小于或等于下一列和下一行中的索引处的值。 

例如在下面的矩阵M中

M = [[-40, -12, 1, 5],

[-20, -2, 5, 15],

[-22, -1, 13, 18],

[-12, 0, 15, 38]]

在上面的矩阵M中,第一行的第一列是-40,它小于同一行中下一列的值(即-12),并且也小于同一列中下一行的值,即-20,所以上。

例子2

# The matrix must be sorted in ascending order. If not, the algorithm will not work properly

matrix = [

   [-40, -12, 1, 5],

   [-20, -2, 5, 15],

   [-22, -1, 13, 18],

   [-12, 0, 15, 38]]

# To obtain the number of row

rowCount = len(matrix)

columnCount = 0

# To obtain the number of column

for i in matrix[0]:

   columnCount += 1

   a = 0

   b = 0

   count_Of_Negative_Integer = 0

while a < rowCount and b < columnCount:

   if matrix[a][b] >= 0:

      a += 1

      b = 0

   else:

      count_Of_Negative_Integer += 1

   b += 1

print("Count of Negative Integers in sorted Matrix is: ",count_Of_Negative_Integer)

结果

Count of Negative Integers in sorted Matrix is: 7

在上面的程序中

  • > = 0:首先,我们尝试查找小于0的负整数的计数。

  • 因为在上面的程序中,我们试图获取负整数,但是,可以使用同一程序来查找小于任何特定整数(n)的整数计数。例如,使用> 5查找小于或等于5的整数计数。

以上是 使用Python在按行和按行排序的矩阵中计算负数? 的全部内容, 来源链接: utcz.com/z/354976.html

回到顶部