文章目录
(一)数组切片操作
1.两个slice之间找出交集、并集
思路是利用map的映射关系来求交并集
package main
import "fmt"
//假设两个集合没有重复元素
//slice1 = [1, 2, 3, 4, 5]
//slice2 = [3, 4, 5, 6, 7]
func intersection(slice1 []int,slice2 []int) []int{
//1.
m:=make(map[int]int)
for _,val:=range slice1{
m[val]=1
}
//2.
var ans []int
for _,val:=range slice2{
times := m[val]
if times!=0 {
ans=append(ans,val)
}
}
return ans
}
func union_set(slice1 []int,slice2 []int) []int{
//1.
m:=make(map[int]int)
for _,val:=range slice1{
m[val]=1
}
//2.
for _,val:=range slice2{
times:=m[val]
if times==0 {
slice1=append(slice1,val)
}
}
return slice1
}
func main() {
intersection:=intersection