Dada una array de diccionario que consta de N elementos, donde tanto la clave como el valor son de tipo entero, la tarea es encontrar la suma de todos los pares de valores clave en el diccionario.
Ejemplos:
Entrada: arr = {1: 10, 2: 20, 3: 30}
Salida: 11 22 33
Explicación:
Suma de clave y valor del primer elemento en el diccionario = 1 + 10 = 11.
Suma de clave y valor de la segundo elemento del diccionario = 2 + 20 = 22.
Suma de clave y valor del tercer elemento del diccionario = 3 + 30 = 33.Entrada: arr = {10 : -5, 5 : -10, 100 : -50}
Salida: 5 -5 50
Aproximación utilizando la técnica de recorrido del diccionario : La idea es atravesar las claves del diccionario utilizando el bucle for .
- Inicialice una lista , digamos l , para almacenar el resultado.
- Recorra el diccionario arr y luego agregue i + arr[i] en la lista l .
- Después de completar los pasos anteriores, imprima la lista l como la respuesta requerida.
Python3
# Python3 implementation of # the above approach # Function to print the list containing # the sum of key and value pairs of # each item of a dictionary def FindSum(arr): # Stores the list containing the # sum of keys and values of each item l = [] # Traverse the dictionary for i in arr: l.append(i + arr[i]) # Print the list l print(*l) # Driver Code arr = {1: 10, 2: 20, 3: 30} FindSum(arr)
11 22 33
Complejidad temporal: O(N)
Espacio auxiliar: O(N)
Enfoque usando el método keys() : un enfoque alternativo para resolver el problema es usar el método keys() . Siga los pasos a continuación para resolver el problema:
- Inicialice una lista , digamos l , para almacenar el resultado.
- Recorra la lista de claves del diccionario arr y luego agregue .
- Después de completar los pasos anteriores, imprima la lista l como respuesta.
Python3
# Python3 implementation of the above approach # Function to print the list # containing the sum of key and # value pairs from a dictionary def FindSum(arr): # Stores the list containing the # sum of keys and values of each item l = [] # Traverse the list of keys of arr for i in arr.keys(): l.append(i + arr[i]) # Print the list l print(*l) # Driver Code arr = {1: 10, 2: 20, 3: 30} FindSum(arr)
11 22 33
Complejidad temporal: O(N)
Espacio auxiliar: O(N)
Publicación traducida automáticamente
Artículo escrito por thotasravya28 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA