Dada una array, gire cíclicamente la array en el sentido de las agujas del reloj en uno. Ejemplos:
Input: arr = [1, 2, 3, 4, 5] Output: arr = [5, 1, 2, 3, 4]
Tenemos una solución existente para este problema, consulte Programa para rotar cíclicamente una array por un enlace. Resolveremos este problema en python rápidamente usando List Comprehension . El enfoque es muy simple, simplemente elimine el último elemento de la lista y agréguelo al frente de la lista restante.
Python3
# Program to cyclically rotate an array by one def cyclicRotate(input): # slice list in two parts and append # last element in front of the sliced list # [input[-1]] --> converts last element pf array into list # to append in front of sliced list # input[0:-1] --> list of elements except last element print ([input[-1]] + input[0:-1]) # Driver program if __name__ == "__main__": input = [1, 2, 3, 4, 5] cyclicRotate(input)
Producción:
[5, 1, 2, 3, 4]
Complejidad temporal: O(n)
Espacio auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por Shashank Mishra y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA