INTUITION:

APPROACH:

Time Complexity:O(N)

Space Complexity:O(1)

Here’s the code:

class Solution {
public:
    void rotate(vector<int>& nums, int k) {
        int n = nums.size();
        k = k % n;
        reverse(nums.begin(), nums.end());
        // rotating rest of elements
        reverse(nums.begin(), nums.begin() + k);
        reverse(nums.begin() + k, nums.end());
    }
};