この解答例はChatGPTによって生成されています,正しいかは自己判断で。 皆の投稿からも解答例が見つかるかもしれませんよ。
BFE.devでのAI解答例 - JavaScript コーディング問題
42. Insertion Sortを実装する
以下がJavaScriptでのInsertion Sort実装例です。
function insertionSort(arr) { for (let i = 1, len = arr.length; i < len; i++) { let j = i - 1; let temp = arr[i]; while (j >= 0 && arr[j] > temp) { arr[j + 1] = arr[j]; j--; } arr[j + 1] = temp; } return arr;}
この実装では、配列の一番最初の要素をソート済みにして、次の要素から順に挿入位置を探していくため、時間複雑性はO(n^2)です。また、新たな配列を作成するわけではないため、空間複雑性はO(1)です。さらに、安定ソートアルゴリズムとして知られています。