Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

奇偶転置ソート-JavaScript


数値の配列を受け取り、最初にすべての偶数が昇順で表示され、次にすべての奇数が昇順で表示されるように配列を並べ替えるJavaScript関数を作成する必要があります。

例:入力配列が-

の場合
const arr = [2, 5, 2, 6, 7, 1, 8, 9];

その場合、出力は-

になります。
const output = [2, 2, 6, 8, 1, 5, 7, 9];

以下はコードです-

const arr = [2, 5, 2, 6, 7, 1, 8, 9];
const isEven = num => num % 2 === 0;
const sorter = ((a, b) => {
   if(isEven(a) && !isEven(b)){
      return -1;
   };
   if(!isEven(a) && isEven(b)){
      return 1;
   };
   return a - b;
});
const oddEvenSort = arr => {
   arr.sort(sorter);
};
oddEvenSort(arr);
console.log(arr);

出力

以下はコンソールの出力です-

[
   2, 2, 6, 8,
   1, 5, 7, 9
]

  1. Javascriptでのマージソートとクイックソート

    マージソートは、分割統治法に基づくソート手法です。最悪の場合の時間計算量はΟ(n log n)です。ただし、このアルゴリズムは余分なO(n)メモリを必要とするため、スペースの面で追加のコストが発生します。 次に、このアルゴリズムをどのように実装するかを見てみましょう。 mergeSortとmergeの2つの関数を作成します。 マージ −この関数は2つの引数を取ります。これらは、2つの部分配列であり、要素を正しい順序で挿入することにより、1つに連結されます。 マージソート −この関数は、配列の左半分と右半分でmergeSortを再帰的に呼び出し、mergeを使用してこれらの配列部分を結合し

  2. 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-