Schreiben Sie eine Funktion, die ein ganzzahliges Array um eine bestimmte Zahl k dreht. k Elemente vom Ende sollten zum Anfang des Arrays verschoben werden, und alle anderen Elemente sollten nach rechts verschoben werden, um den Platz zu schaffen.
Die Drehung sollte an Ort und Stelle erfolgen.
Der Algorithmus sollte nicht in mehr als O (n) ausgeführt werden, wobei n die Größe des Arrays ist.
Außerdem muss ein konstanter Speicher verwendet werden, um die Operation auszuführen.
Zum Beispiel,
Wenn das Array mit Elementen initialisiert wird, ist arr = {1, 2, 3, 4, 5, 6, 7, 8, 9}
Durch Drehen (arr, 3) werden die Elemente zu {7, 8, 9, 1, 2, 3, 4, 5, 6}.
Drehen (arr, 6) führt zu {4, 5, 6, 7, 8, 9, 1, 2, 3}