[LeetCode-Eazy] Intersection of Two Arrays II
Golang
建立一個數組的map, loop 一次 nums1 把數組內的每個數都註冊到 m 裡面並紀錄出現的次數
接下來 loop nums2 並用 value 去 看這個值在 map 裡面的有沒有存在和確定 出現次數是不是 > 0 並且把 map 裡面的 val減少一個
func intersect(nums1 []int, nums2 []int) []int {
m := make(map[int]int)
for _, v := range nums1 {
if _,ok := m[v]; ok {
m[v]++
} else {
m[v] = 1
}
}
ret := []int{}
for _, v := range nums2 {
if val, ok := m[v]; val > 0 && ok {
ret = append(ret, v)
m[v]--
}
}
return ret
}