编写一个 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.

更新于: 2021 年 2 月 4 日

548 次浏览

开启你的 职业生涯

完成课程,获得认证

开始
广告