package mainimport (fmt)func mergeAB(a,b []int) []int {lenA := len(a)lenB := len(b)ab := make([]int ,lenA+lenB)index := 0//从首元素开始,将较小的放入到新切片中,再将较小的数组下标加一i , j := 0,0fo...

package main
import (
"fmt"
)
func mergeAB(a,b []int) []int {
lenA := len(a)
lenB := len(b)
ab := make([]int ,lenA+lenB)
index := 0
//从首元素开始,将较小的放入到新切片中,再将较小的数组下标加一
i , j := 0,0
for i,j =0,0;i<lenA&&j<lenB;{
if a[i]<b[j]{
ab[index] = a[i]
index++
i++
}else if a[i]>b[j]{
ab[index] = b[j]
index++
j++
}else {
ab[index]=a[i]
index ++
i++
}
}
//一定有一个数组是先遍历完,把另外一个数组的所有元素都添加进去
for i<lenA{
ab[index]=a[i]
i++
index++
}
for j<lenB {
ab[index] = b[j]
j++
index++
}
fmt.Println("你好")
return ab
}
func main() {
var ab []int
var a = []int{1,5,7,10}
var b = []int{2,6,9,13,19,90}
ab = mergeAB(a,b)
fmt.Println(ab)
}
输出显示
沃梦达教程
本文标题为:golang 合并两个有序的数组


猜你喜欢
- R语言-如何切换科学计数法和更换小数点位数 2022-11-23
- Ruby on Rails在Ping ++ 平台实现支付 2023-07-22
- R语言绘图数据可视化pie chart饼图 2022-12-10
- Golang http.Client设置超时 2023-09-05
- R语言关于二项分布知识点总结 2022-11-30
- Swift超详细讲解指针 2023-07-08
- Go Web开发进阶实战(gin框架) 2023-09-06
- Ruby 迭代器知识汇总 2023-07-23
- Ruby的字符串与数组求最大值的相关问题讨论 2023-07-22
- 汇编语言程序设计之根据输入改变屏幕颜色的代码 2023-07-06