方法1: スライスを使用して回転 この方法では、配列のスライスを使用して回転させます。スライスを使用すると、配列の一部を取得することができます。
function leftRotate(arr, k) {
k = k % arr.length; // 回転数が配列の長さを超える場合に対応
return arr.slice(k).concat(arr.slice(0, k));
}
const array = [1, 2, 3, 4, 5];
const rotations = 3;
const rotatedArray = leftRotate(array, rotations);
console.log(rotatedArray); // 出力: [4, 5, 1, 2, 3]
方法2: ループを使用して回転 この方法では、配列の要素を一つずつ左にずらしていきます。
function leftRotate(arr, k) {
k = k % arr.length; // 回転数が配列の長さを超える場合に対応
for (let i = 0; i < k; i++) {
const temp = arr[0];
for (let j = 0; j < arr.length - 1; j++) {
arr[j] = arr[j + 1];
}
arr[arr.length - 1] = temp;
}
return arr;
}
const array = [1, 2, 3, 4, 5];
const rotations = 3;
const rotatedArray = leftRotate(array, rotations);
console.log(rotatedArray); // 出力: [4, 5, 1, 2, 3]
以上のように、JavaScriptでHackerrankの左回転問題を解くための2つの方法を紹介しました。これらの方法を使って配列を回転させることができます。