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

JavaScriptの特殊なタイプのソートアルゴリズム


整数の配列を唯一の引数として受け取るJavaScript関数を作成する必要があります。

関数は、次の条件に基づいて配列を並べ替える必要があります-

  • すべての偶数は昇順で並べ替えられます

  • すべての奇数は降順で並べ替えられます

  • 偶数と奇数の相対位置は同じままです

例-

入力配列が-

の場合
const arr = [12, 17, 15, 24, 1, 6];

その場合、出力は-

になります。
const output = [6, 17, 15, 12, 1, 24];

以下はコードです-

const arr = [12, 17, 15, 24, 1, 6];
const specialSort = (nums = []) => {
   const oddArr = [], evenArr = [];
   for (let i = 0; i < nums.length; i++){
      if (nums[i] & 1) {
         oddArr.push(i);
      } else {
         evenArr.push(i);
      }
   }
   nums.sort((a, b) => a - b);
   let odd = oddArr.length - 1, even = 0;
   const res = [];
   for (let i = 0; i < nums.length; i++){
      if (nums[i] & 1) {
         res[oddArr[odd--]] = nums[i];
      } else {
         res[evenArr[even++]] = nums[i];
      }
   }
   return res;
}

出力

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

[ 6, 17, 15, 12, 1, 24 ]

  1. JavaScriptで型キャスト。

    型キャストとは、あるデータ型を別のデータ型に明示的に変換することを意味します。 JavaScriptでは、データ型をString()を使用して文字列に、Boolean()を使用してブール値に、またはNumber()を使用して数値に変換する最も一般的なメソッドのいくつか。 以下はJavaScriptでの型キャストのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="view

  2. JavaScript型強制とは何ですか?

    型強制とは、データ型を自動的または暗黙的に別のデータ型に変換することを意味します。 以下はJavaScript型強制のコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document&l