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-26
- ruby on rails validates 2023-09-22
- Ruby3多线程并行Ractor使用方法详解 2023-07-23
- Swift中重写和重载的使用与对比总结 2023-07-05
- win10下使用virtualbox + vagrant配置ruby开发机环境 2023-07-23
- R语言 ggplot2改变柱状图的顺序操作 2022-11-17
- R语言绘制折线图实例分析 2022-11-21
- 浅析ELF转二进制允许把 Binary 文件加载到任意位置 2023-07-06
- Swift初始化器与可选链的使用方法介绍 2023-07-08
- ruby-on-rails-为使用Rails 4,nginx和乘客的用户设置自定义域 2023-09-21
