JavaScriptで最初の位置を維持しながら、整数配列を並べ替えます
数値の配列を受け取るJavaScript関数を作成する必要があります。関数は、次の条件に従って配列を並べ替える必要があります-
-
array[0]はその場所を維持する必要があります
-
次に大きい整数が続く(存在する場合)
-
次に、最小の整数から昇順
例-
入力配列が-
の場合const arr = [10, 7, 12, 3, 5, 6];
その場合、出力は-
になります。const output = [10, 12, 3, 5, 6, 7];
例
以下はコードです-
const arr = [10, 7, 12, 3, 5, 6]; const uniqueSort = (arr = []) => { const first = arr[0]; const sorter = (a, b) => { return (a < first) - (b < first) || a - b; }; arr.sort(sorter); }; uniqueSort(arr); console.log(arr);
出力
以下はコンソールでの出力です-
[10, 12, 3, 5, 6, 7]
-
Javascriptでのマージソートとクイックソート
マージソートは、分割統治法に基づくソート手法です。最悪の場合の時間計算量はΟ(n log n)です。ただし、このアルゴリズムは余分なO(n)メモリを必要とするため、スペースの面で追加のコストが発生します。 次に、このアルゴリズムをどのように実装するかを見てみましょう。 mergeSortとmergeの2つの関数を作成します。 マージ −この関数は2つの引数を取ります。これらは、2つの部分配列であり、要素を正しい順序で挿入することにより、1つに連結されます。 マージソート −この関数は、配列の左半分と右半分でmergeSortを再帰的に呼び出し、mergeを使用してこれらの配列部分を結合し
-
JavaScriptのArray.prototype.sort()。
JavaScript Array.prototype.sort()メソッドは、配列の並べ替えに使用されます。並べ替えの順序は、アルファベット、数字、昇順、降順のいずれかです。 以下は、Array.prototype.sort()メソッドのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-