Python | Suma máxima de elementos de lista en una lista de listas

Listas dadas en una lista, encuentre la suma máxima de elementos de lista en una lista de listas. Ejemplos:

Input :  [[1, 2, 3], [4, 5, 6], [10, 11, 12], [7, 8, 9]]
Output : 33 
Explanation: sum of all lists in the given list of lists are:
             list1 = 6, list2 = 15, list3 = 33, list4 = 24 
             so the maximum among these is of 

Input : [[3, 4, 5], [1, 2, 3], [0, 9, 0]]
Output : 12

Método 1: Recorrido de lista en listas

Podemos recorrer las listas dentro de la lista y sumar todos los elementos en una lista dada y mediante la función max obtener el máximo de la suma de todos los elementos en las listas de la lista. 

Python

# Python program to find the
# list in a list of lists whose
# sum of elements is the highest
# using traversal
 
def maximumSum(list1):
    maxi = 0
 
    # traversal in the lists
    for x in list1:
        sum = 0
        # traversal in list of lists
        for y in x:
            sum+= y    
        maxi = max(sum, maxi)
         
    return maxi
     
# driver code 
list1 = [[1, 2, 3], [4, 5, 6], [10, 11, 12], [7, 8, 9]]
print maximumSum(list1)

Producción:

33

Complejidad temporal: O(n*m) donde n es el número de listas y m es el tamaño máximo de la lista.
Espacio Auxiliar: O(1)

Método 2: Recorrido de la lista

Recorra solo la lista externa y sume todos los elementos en las listas internas usando la función sum() , encuentre la suma de todas las listas y obtenga el máximo de todas las sumas calculadas. 

Python

# Python program to find the
# list in a list of lists whose
# sum of elements is the highest
# using sum and max function and traversal
 
def maximumSum(list1):
    maxi = 0
    # traversal
    for x in list1:
        maxi = max(sum(x), maxi)
         
    return maxi
     
 
# driver code 
list1 = [[1, 2, 3], [4, 5, 6], [10, 11, 12], [7, 8, 9]]
print maximumSum(list1)

Producción:

33

Complejidad temporal: O(n*m) donde n es el número de listas y m es el tamaño máximo de la lista.
Espacio Auxiliar: O(1)

Método 3: función Suma y Max

sum(max(list1, key=sum))

La sintaxis anterior de la función max() nos permite encontrar la suma de la lista en la lista usando key=sum . max(list1, key=sum) , encuentra la lista con la suma máxima de elementos y luego sum(max(list1, key=sum)) nos devuelve la suma de esa lista. 

Python

# Python program to find the
# list in a list of lists whose
# sum of elements is the highest
# using sum and max function
 
def maximumSum(list1):
    return(sum(max(list1, key = sum)))
     
 
# driver code 
list1 = [[1, 2, 3], [4, 5, 6], [10, 11, 12], [7, 8, 9]]
print maximumSum(list1)

Producción:

33

Complejidad temporal: O(n*m) donde n es el número de listas y m es el tamaño máximo de la lista.
Espacio Auxiliar: O(1)

Publicación traducida automáticamente

Artículo escrito por Striver y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *