java怎么合并两个有序数组

36次阅读
没有评论

共计 554 个字符,预计需要花费 2 分钟才能阅读完成。

可以使用双指针的方法来合并两个有序数组。具体步骤如下:

  1. 创建一个新的数组,用于存放合并后的结果。
  2. 初始化三个指针,分别指向两个数组的开头和新数组的开头。
  3. 比较两个数组当前指针指向的元素,将较小的元素放入新数组,并将该数组的指针向后移动一位。
  4. 重复步骤 3,直到其中一个数组的所有元素都被放入新数组。
  5. 将另一个数组中剩余的元素依次放入新数组。
  6. 返回合并后的新数组。

下面是一个示例代码:

public static int[] mergeArrays(int[] arr1, int[] arr2) {int[] merged = new int[arr1.length + arr2.length];
int i = 0, j = 0, k = 0;
while (i < arr1.length && j < arr2.length) {if (arr1[i] < arr2[j]) {merged[k++] = arr1[i++];
} else {merged[k++] = arr2[j++];
}
}
while (i < arr1.length) {merged[k++] = arr1[i++];
}
while (j < arr2.length) {merged[k++] = arr2[j++];
}
return merged;
}

你可以调用这个方法并传入两个有序数组,它会返回一个合并后的有序数组。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-22发表,共计554字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)