广告
返回顶部
首页 > 资讯 > 后端开发 > GO >如何在 go 中创建地图并查找重复项
  • 337
分享到

如何在 go 中创建地图并查找重复项

2024-04-05 00:04:42 337人浏览 薄情痞子
摘要

IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天编程网给大家整理了《如何在 Go 中创建地图并查

IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天编程网给大家整理了《如何在 Go 中创建地图并查找重复项》,聊聊,我们一起来看看吧!

问题内容

我是新手,不知道如何完成这项任务:

编写一个程序,在第一行从标准输入读取 [1; 范围内的连续数字的数量9],然后 被加载到数组中。然后打印重复实例的数量 将指定的数组值发送到标准输出。

input:
7
1 1 2 2 1 3 5
output:
1: 3
2: 2
3: 1
5: 1

我已经完成了一半的任务,但我不知道如何通过地图进行重复跟踪

func main() {
    var numbers int
    fmt.Println("num: ")
    fmt.Scan(&numbers)
    var numArr int
    var i = 1
    arr := make([]int, 0)

    if numbers <= 9 {
        for ; i <= numbers; i++ {

            fmt.Println("numArr: ")
            fmt.Scan(&numArr)
            if numArr < 9 {
                arr = append(arr, numArr)
            } else {
                fmt.Println("sorry write the number up to 9")
                break
            }

        }

    } else {
        fmt.Println("Max Numbers = 9")
    }
    fmt.Println(arr)

    m := make(map[int]int)

    for key, v := range arr {
        
        
    }


正确答案


看起来您正在使用 map[value from file]count 填充地图。因此,接收到的每个不同数字都会有一个条目,并且映射中保存的值将是该值(键)被看到的次数。填充此类地图的一个简单方法是:

for _, v := range arr {
        m[v]++
}

Playground。请注意,map 是无序的,因此您可能需要在输出结果之前对其进行排序

注意:您可以通过 aligning the happy path to the left edge 简化代码(并修复细微的错误),即

if numbers > 9 {
   fmt.Println("Max Numbers = 9")
   return // Important - otherwise we will still try to find duplicates in the 'large' slice
}
// Do stuff that should happen when we have 9 or fewer ints

以上就是《如何在 go 中创建地图并查找重复项》的详细内容,更多关于的资料请关注编程网公众号!

您可能感兴趣的文档:

--结束END--

本文标题: 如何在 go 中创建地图并查找重复项

本文链接: https://www.lsjlt.com/news/596693.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作