Objetivo: programa para calcular la suma de dos arrays y luego imprimirlo en Python.
Ejemplos:
Input : X= [[1,2,3], [4 ,5,6], [7 ,8,9]] Y = [[9,8,7], [6,5,4], [3,2,1]] Output : result= [[10,10,10], [10,10,10], [10,10,10]]
Podemos realizar la suma de arrays de las siguientes maneras en Python.
Usando el bucle for :
Implementación:
Python
# Program to add two matrices using nested loop X = [[1,2,3], [4 ,5,6], [7 ,8,9]] Y = [[9,8,7], [6,5,4], [3,2,1]] result = [[0,0,0], [0,0,0], [0,0,0]] # iterate through rows for i in range(len(X)): # iterate through columns for j in range(len(X[0])): result[i][j] = X[i][j] + Y[i][j] for r in result: print(r)
[10, 10, 10] [10, 10, 10] [10, 10, 10]
Complejidad de tiempo: O(len(X) * len(X[0])) , ya que estamos usando un bucle anidado para atravesar la array.
Espacio auxiliar: O(len(X) * len(X[0])) , ya que estamos usando una array de resultados que es espacio adicional.
Otro enfoque:
- Explicación: – En este programa, hemos utilizado bucles for anidados para iterar a través de cada fila y cada columna. En cada punto sumamos los elementos correspondientes en las dos arrays y lo almacenamos en el resultado.
- Uso de la comprensión de listas anidadas : en Python, podemos implementar una array como lista anidada (lista dentro de una lista). Podemos tratar cada elemento como una fila de la array.
Implementación:
Python
# Program to add two matrices # using list comprehension X = [[1,2,3], [4 ,5,6], [7 ,8,9]] Y = [[9,8,7], [6,5,4], [3,2,1]] result = [[X[i][j] + Y[i][j] for j in range (len(X[0]))] for i in range(len(X))] for r in result: print(r)
[10, 10, 10] [10, 10, 10] [10, 10, 10]
Complejidad de tiempo: O(len(X) * len(X[0])) , ya que estamos usando un bucle anidado para atravesar la array.
Espacio auxiliar: O(len(X) * len(X[0])) , ya que estamos usando una array de resultados que es espacio adicional.
Otro enfoque:
- Explicación: –
La salida de este programa es la misma que la anterior. Hemos utilizado la comprensión de listas anidadas para iterar a través de cada elemento de la array. La comprensión de listas nos permite escribir códigos concisos y debemos tratar de usarlos con frecuencia en Python. Son muy útiles. - Usando zip() y suma
Implementación:
Python
# Program to add two matrices # using zip() X = [[1,2,3], [4 ,5,6], [7 ,8,9]] Y = [[9,8,7], [6,5,4], [3,2,1]] result = [map(sum, zip(*t)) for t in zip(X, Y)] print(result)
[[10, 10, 10], [10, 10, 10], [10, 10, 10]]
Complejidad de tiempo: O(len(X) * len(X[0])) , ya que estamos usando la función zip.
Espacio auxiliar: O(len(X) * len(X[0])) , ya que estamos usando espacio adicional.
Explicación: – La función zip acepta el iterador i de cada elemento (lista) de la array, mapeándolos, agregándolos usando sum() y almacenándolos en el formulario de mapa.
Este artículo es una contribución de ajay0007 . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA