dqa35710 2015-07-07 08:58 采纳率: 0%
浏览 24
已采纳

如何在go中返回大型数据结构的唯一元素?

I am new to Go language and troubling in the code to find the unique elements in the go.

   var arr [10]string
      arr[0]="table"
      arr[1]="chair"
      arr[2]="table"
      arr[3]="table"
      arr[4]="chair"
      arr[5]="bench"
      arr[6]="table,chair"
      arr[7]="bench,chair"
      arr[8]="chair,table,bench"
      arr[9]="car"

The output should be like:

table 
chair
bench
car

I am really stuck on this. how to get the unique elements from the above array. The array contains comma seperated values also but i need to print only the unique elements.

Pls someone help me on this.

Thanks for advance.

  • 写回答

1条回答 默认 最新

  • dongyong6428 2015-07-07 09:10
    关注

    Idea: use map[string]bool to collect unique elements, use strings.Split to split comma-separated list of words into strings.

    Example: http://play.golang.org/p/sBopFGrzbX

    package main
    
    import (
        "fmt"
        "strings"
    )
    
    func main() {
        arr := [...]string{
            "table",
            "chair",
            "table",
            "table",
            "chair",
            "bench",
            "table,chair",
            "bench,chair",
            "chair,table,bench",
            "car",
        }
    
        m := make(map[string]bool)
        for _, e := range arr {
            for _, w := range strings.Split(e, ",") {
                m[w] = true
            }
        }
    
        for k, _ := range m {
            fmt.Println(k)
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看