JavaScriptで配列の先頭からk番目の要素と末尾からk番目の要素を入れ替える方法
課題
数値の配列と整数 k を引数として受け取る JavaScript 関数を作成する必要があります。ここで k は、配列の長さ以下であることが前提となります。
この関数は、配列の先頭から k 番目の要素と、末尾から k 番目の要素を入れ替えて返すものとします。
コード例
以下がその実装例です −
const arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
const swapKth = (arr, k) => {
const { length: l } = arr;
let temp;
const ind = k-1;
temp = arr[ind];
arr[ind] = arr[l-k];
arr[l-k] = temp;
};
swapKth(arr, 4);
console.log(arr);
swapKth(arr, 8);
console.log(arr);
処理の流れ
この関数のポイントは、インデックスの計算方法にあります。配列の長さを l としたとき、先頭から k 番目の要素のインデックスは k-1、末尾から k 番目の要素のインデックスは l-k となります。あとは一時変数 temp を使って、この2つの要素の値を交換するだけで完成です。
出力
コンソールへの出力結果は以下の通りです −
[
0, 1, 2, 6, 4,
5, 3, 7, 8, 9
]
[
0, 1, 7, 6, 4,
5, 3, 2, 8, 9
]
最初の呼び出し swapKth(arr, 4) では、先頭から4番目の「3」と末尾から4番目の「6」が入れ替わり、次の swapKth(arr, 8) では、先頭から8番目の「2」と末尾から8番目の「7」が入れ替わっているのが確認できます。
-
JavaScriptで配列を空にする方法まとめ【3つの手法と使い分けのポイント】
JavaScriptで配列を空にする(初期化する)方法は複数あります。それぞれの手法には特徴や注意点があり、状況に応じて適切に使い分けることが重要です。この記事では、代表的な3つの方法と、それぞれのメリット・デメリットを詳しく解説します。まず、以下のような配列があると仮定します。let arr = [1, test, {}, 123.43];方法1:新しい空の配列で置き換えるarr = [];変数arrに新しい空の配列を再代入する方法です。最もシンプルかつ高速な手法として知られています。ただし注意点として、元の配列への参照がプログラムの他の場所に存在する場合、それらの参照は自動的に更新されませ
-
JavaScriptの基本配列メソッド解説!push・pop・shift・unshift・spliceの使い方を実例付きで紹介
JavaScriptには、配列を操作するための便利な組み込みメソッドが数多く用意されています。その中でも特によく使われるのが、要素の追加や削除を行う以下の5つの基本メソッドです。 JavaScriptの主要な配列メソッド一覧 メソッド説明 Array.push()配列の末尾に要素を追加します。 Array.pop()配列の末尾から要素を取り除きます。 Array.unshift()配列の先頭に要素を追加します。 Array.shift()配列の先頭から要素を取り除きます。 Array.splice()配列内の任意の位置で要素の追加・削除を行います。 これらのメソッドは、配列の