为了账号安全,请及时绑定邮箱和手机立即绑定

处理整数列表和查找、添加和删除的最佳方法

处理整数列表和查找、添加和删除的最佳方法

Go
胡子哥哥 2021-06-03 13:09:35
我需要创建一个整数列表,并能够快速添加、删除和查找该列表中的项目。虽然我可以创建一个包含它们的字符串和一个处理添加/删除/定位的函数,但如果 Go 可以为我处理它显然更有意义。我查看了容器/列表,它似乎并不完全合适,但也许我错了。为了非常快速地实现某些东西,我使用了一个整数数组,但这远非理想,我需要找到一个更好的解决方案。该列表可能最多包含 1,000 个值。有人可以建议在 Go 中处理这个问题的“最佳”方法吗?一个例子价值 1,000 字。
查看完整描述

3 回答

?
达令说

TA贡献1821条经验 获得超6个赞

为了保持简单,我将使用map。地图非常快速、高效且内置。

package main


import "fmt"


func main() {

    // Make our collection of integers

    xs := make(map[int]bool)


    // Add some things to the collection

    xs[1] = true

    xs[2] = true

    xs[3] = true


    // Find them

    if xs[2] {

        fmt.Println("Found 2")

    } else {

        fmt.Println("Didn't Find 2")

    }

    if xs[8] {

        fmt.Println("Found 8")

    } else {

        fmt.Println("Didn't Find 8")

    }


    // Delete them

    delete(xs, 2)


    // List them

    for x := range xs {

        fmt.Println("Contents", x)

    }

}

其中产生


发现 2

没找到 8

内容 3

内容 1

这种解决方案的唯一缺点可能是整数没有按任何特定顺序保存,这对您的应用程序可能重要也可能不重要。


查看完整回答
反对 回复 2021-06-07
  • 3 回答
  • 0 关注
  • 204 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信