Python 使用map函数找到具有最多1的行
在本文中,我们将学习如何使用map函数来找到具有最多1的行。给定了一个二维数组,数组元素为0和1。所有行都已排序。我们必须找到具有最多1的行。在这里我们使用map()函数。map函数是Python内置函数中最简单的一个,用于函数式编程。这些工具将函数应用于序列和其他可迭代对象。
假设输入是以下数组 –
[[0, 1, 1, 1, 1],[0, 0, 1, 1, 1],[1, 1, 1, 1, 1],[0, 0, 0, 0, 1]]
输出显示具有最大数量的1的行 –
2
找出含有最多1的行
在这个示例中,我们将使用map()函数来找到含有最多1的行:
示例
def maximumFunc(n):
max1 = list(map(sum,n))
print ("Row with maximum number of 1s = ",max1.index(max(max1)))
# Driver program
if __name__ == "__main__":
n = [[0, 1, 0, 1, 1],[1, 0, 0, 0, 1],[1, 1, 1, 0, 1]]
maximumFunc(n)
输出
Row with maximum number of 1s = 2
使用for循环查找包含最大数量的1的行
在本示例中,我们将使用一个简单的for循环来查找包含最大数量的1的行。
示例
m = [[0, 1, 0, 1, 1],[1, 0, 1, 0, 1],[1, 0, 1, 0, 1]]
mrows = len(m)
max1 = 0
for k in range(mrows):
c = m[k].count(1)
if(c >= max1):
max1 = c
res = k+1
print("The row with maximum number of 1s = ", res)
输出
The row with maximum number of 1s = 3