共計 554 個字符,預計需要花費 2 分鐘才能閱讀完成。
可以使用雙指針的方法來合并兩個有序數組。具體步驟如下:
- 創建一個新的數組,用于存放合并后的結果。
- 初始化三個指針,分別指向兩個數組的開頭和新數組的開頭。
- 比較兩個數組當前指針指向的元素,將較小的元素放入新數組,并將該數組的指針向后移動一位。
- 重復步驟 3,直到其中一個數組的所有元素都被放入新數組。
- 將另一個數組中剩余的元素依次放入新數組。
- 返回合并后的新數組。
下面是一個示例代碼:
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 網 – 提供最優質的資源集合!
正文完