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

2つの並べ替えられた配列をマージして、JavaScriptで結果の並べ替えられた配列を形成します


2つの並べ替えられた数値の配列を受け取るJavaScript関数を作成する必要があります。この関数は、2つの配列をマージして、結果のソートされた配列を形成し、その配列を返す必要があります。

例-

2つの配列が-

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

その場合、出力配列は-

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

このためのコードは-

になります
const arr1 = [2, 6, 6, 8, 9];
const arr2 = [1, 4, 5, 7];
const mergeSortedArrays = (arr1 = [], arr2 = []) => {
   let m = arr1.length;
   let n = arr2.length;
   let currentIndex = m + n;
   const checkNum1HasLargerNumber = (a, b) => {
      if (a < 0) {
         return false;
      };
      if (b < 0) {
         return true;
      };
      return arr1[a] >= arr2[b];
   };
   m −= 1;
   n −= 1;
   while (currentIndex−−) {
      let hasNums1LargerNumber = checkNum1HasLargerNumber(m, n);
      arr1[currentIndex] = hasNums1LargerNumber ? arr1[m] : arr2[n];
      if (hasNums1LargerNumber) {
         m −= 1;
      } else {
         n −= 1;
      }
   };
};
mergeSortedArrays(arr1, arr2);
console.log(arr1);

出力

そして、コンソールの出力は-

になります
[
   1, 2, 4, 5, 6,
   6, 7, 8, 9
]

  1. C#を使用して、並べ替えられた2つの配列をリストにマージします

    2つの並べ替えられた配列をリストにマージするには、最初に2つの並べ替えられた配列を設定します- int[] array1 = { 1, 2 }; int[] array2 = { 3, 4 }; それをリストに追加してマージします- var list = new List<int>(); for (int i = 0; i < array1.Length; i++) {    list.Add(array1[i]);       list.Add(array2[i]); } 次に、ToArray()メソッドを使用して、以下

  2. 2つのソートされた配列を1つにマージするC#プログラム

    マージする2つの配列を設定します- int[] arr1 = new int[5] {    5,    15,    25,    30,    47 }; int[] arr2 = new int[5] {    55,    60,    76,    83,    95 }; 次に、上記の両方の配列をマージする3番目の配列を取得します- int[] merged = new int[10