编写一个 Golang 程序来查找数组中每个元素出现的次数
示例
输入数组 = [1, 3, 4, 3, 2, 3, 4, 0, 2]
元素 | 1 | 3 | 4 | 2 | 0 |
出现次数 | 1 | 3 | 2 | 2 | 1 |
解决此问题的办法
- 步骤 1:定义一个接受数组的方法。
- 步骤 2:定义一个映射,其中键为数组的元素,起始值为 0。
- 步骤 3:开始迭代输入数组。如果元素存在于映射中,则递增计数。
- 步骤 4:如果元素不存在于映射中,则存储在映射中并使其值变为 1。
程序
package main import ( "fmt" ) func findFrequencyOfArray(arr []int){ frequency := make(map[int]int) for _, item := range arr{ if frequency[item] == 0{ frequency[item] = 1 } else { frequency[item]++ } } for item, count := range frequency{ fmt.Printf("%d occurring %d times.\n", item, count) } } func main(){ findFrequencyOfArray([]int{2, 2, 5, 1, 3, 5, 0}) }
输出
2 occurring 2 times. 5 occurring 2 times. 1 occurring 1 times. 3 occurring 1 times. 0 occurring 1 times.
广告