这是 Beta 面试指南,内容结构、题目覆盖和示例答案可能会继续调整。
合并两个已排序数组
🟢 简单题目描述
合并两个已排序的数组。
参考答案
func MergeSorted(a, b []int) []int {
result := make([]int, 0, len(a)+len(b))
i, j := 0, 0
for i < len(a) && j < len(b) {
if a[i] <= b[j] {
result = append(result, a[i])
i++
} else {
result = append(result, b[j])
j++
}
}
// 追加剩余元素
result = append(result, a[i:]...)
result = append(result, b[j:]...)
return result
}复杂度分析
- 时间复杂度:O(m + n)
- 空间复杂度:O(m + n)