js合并两个升序数组
时间: 2024-04-10 21:23:35 浏览: 59
以下是两种JavaScript合并两个升序数组的方法:
1. 使用concat()和sort()方法合并并排序数组:
```javascript
function merge(arr, arr1) {
if (!Array.isArray(arr) || !Array.isArray(arr1)) {
return [];
}
const data = arr.concat(arr1);
data.sort((a, b) => a - b);
return data;
}
```
2. 使用双指针法合并并排序数组:
```javascript
function merge(arr, arr1) {
if (!Array.isArray(arr) || !Array.isArray(arr1)) {
return [];
}
let i = 0;
let j = 0;
const merged = [];
while (i < arr.length && j < arr1.length) {
if (arr[i] < arr1[j]) {
merged.push(arr[i]);
i++;
} else if (arr[i] > arr1[j]) {
merged.push(arr1[j]);
j++;
} else {
merged.push(arr[i]);
merged.push(arr1[j]);
i++;
j++;
}
}
while (i < arr.length) {
merged.push(arr[i]);
i++;
}
while (j < arr1.length) {
merged.push(arr1[j]);
j++;
}
return merged;
}
```
阅读全文