1 Star 0 Fork 0

HanYong/leetcode

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
88.合并两个有序数组.go 969 Bytes
一键复制 编辑 原始数据 按行查看 历史
HanYong 提交于 2022-02-09 10:23 . merge-sorted-array
/*
* @lc app=leetcode.cn id=88 lang=golang
*
* [88] 合并两个有序数组
*/
// @lc code=start
func merge(nums1 []int, m int, nums2 []int, n int) {
for i := 0; i < n; i++ {
nums1[m+i] = nums2[i]
}
sort.Ints(nums1)
}
// @lc code=end
// @lc code=start
func merge(nums1 []int, m int, nums2 []int, n int) {
tempNums := nums1[:m]
newNums := append(tempNums, nums2...)
copy(nums1, newNums)
sort.Ints(nums1)
}
// @lc code=end
func merge(nums1 []int, m int, nums2 []int, _ int) {
copy(nums1[m:], nums2)
sort.Ints(nums1)
}
func merge(nums1 []int, m int, nums2 []int, n int) {
a := 0
b := 0
newNums := make([]int, 0, m+n)
for i := 0; i < m+n; i++ {
if a == m {
newNums = append(newNums, nums2[b:]...)
break
}
if b == n {
newNums = append(newNums, nums1[a:]...)
break
}
if nums1[a] < nums2[b] {
newNums = append(newNums, nums1[a])
a++
} else {
newNums = append(newNums, nums2[b])
b++
}
}
copy(nums1, newNums)
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/yinhu000/leetcode.git
[email protected]:yinhu000/leetcode.git
yinhu000
leetcode
leetcode
master

搜索帮助