-
Array.prototype.sort()を使用する方法:
const arr = [4, 2, 7, 1, 5]; arr.sort((a, b) => a - b); console.log(arr); // 出力: [1, 2, 4, 5, 7]
Array.prototype.sort()は、与えられた配列を破壊的にソートします。コールバック関数
(a, b) => a - b
を使用することで、要素を昇順でソートすることができます。 -
バイナリソートの独自実装:
function binarySort(arr) { if (arr.length <= 1) { return arr; } const pivot = arr[Math.floor(arr.length / 2)]; const equal = arr.filter(element => element === pivot); const less = arr.filter(element => element < pivot); const greater = arr.filter(element => element > pivot); return binarySort(less).concat(equal, binarySort(greater)); } const arr = [4, 2, 7, 1, 5]; const sortedArr = binarySort(arr); console.log(sortedArr); // 出力: [1, 2, 4, 5, 7]
この方法では、バイナリソートを再帰的に実装しています。与えられた配列をピボットと比較し、小さい要素、同じ要素、大きい要素に分割します。それぞれの部分配列を再帰的にバイナリソートし、結合することで最終的なソート済み配列を得ることができます。
これらはJavaScriptでバイナリソートを実装するための基本的な方法です。他にも様々なバイナリソートのアルゴリズムが存在しますので、興味があればさらなる調査をおすすめします。