例子
输入数组= [1、3、4、3、2、3、4、0、2]
元素 | 1 | 3 | 4 | 2 | 0 |
出现次数 | 1 | 3 | 2 | 2 | 1 |
解决这个问题的方法
步骤1: 定义一个接受数组的方法。
步骤2: 定义一个映射,其中key将是数组的元素,起始值为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.