const nums = [1,2,3,4,5,6,7];
let k = 3;
const rotateArray = (nums, k) => {
let previous = 0, temp = 0;
k %= nums.length;
for (let i=0; i < k; i++) {
previous = nums[nums.length - 1];
for (let j = 0; j < nums.length; j++) {
temp = nums[j];
nums[j] = previous;
previous = temp;
}
}
return nums;
}
//console.log(rotateArray(nums, k));
const reverse = (array, start, end) => {
while (start < end) {
temp = array[start];
array[start] = array[end];
array[end] = temp;
start++;
end--;
}
return array;
}
// console.log(reverse(nums, 0, nums.length-1));
const rotateArray2 = (nums, k) => {
k %= nums.length;
console.log(reverse(nums, 0, nums.length-1));
console.log(reverse(nums, 0, k-1));
console.log(reverse(nums, k, nums.length-1));
}
console.log(rotateArray2(nums, k));