Go指南练习_映射

源地址 https://tour.go-zh.org/moretypes/23

一、题目描述

实现 WordCount。它应当返回一个映射,其中包含字符串 s 中每个“单词”的个数。函数 wc.Test 会对此函数执行一系列测试用例,并输出成功还是失败。

你会发现 strings.Fields 很有帮助。

二、分析

  • 用strings.Fields获取字符串的分割信息;
  • 以位形式返回;
  • 计算字符串中单个单词出现的次数。

三、Go代码

package main

import (
    "golang.org/x/tour/wc"
    "strings"
)

func WordCount(s string) map[string]int {
    m := make(map[string]int)  // 创建映射
    c := strings.Fields(s)  // 以[]byte形式返回
    for _, v := range c {  //每出现相同的单词(字符串)
        m[v] += 1  //出现次数就 + 1         
    }
    return m
}
func main() {
    wc.Test(WordCount)
}

运行结果

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 飞鱼48小时游戏创作嘉年华_厦门Pitch Time总结与收获

    明确美术队友和程序队友的水平,提需求的过程中尝试做减法,在保留核心玩法的基础上,看队友水平和时间判断是否添加需求。

    Zoctopus
  • 《算法图解》第七章笔记_迪杰斯特拉算法

    Zoctopus
  • 笔试常考题型之二叉树的遍历

    Zoctopus
  • GO学习笔记 - 数据校验

    本文主题:基于asaskevich/govalidator实现Golang数据校验

    小慢哥Linux运维
  • Swift3.0带来的变化汇总系列一——字符串与基本运算符中的变化

          Apple与今年6月13日正式发布了Swift3.0的第一个预览版本,并且相应推出了Xcode8的第一个bate版本。开发者已经可以在Xcode8b...

    珲少
  • 使用Razor引擎模板生成字符串

    使用Razor引擎模板生成字符串,类似于T4模板,T4要学语法,Razor就是就用c#了

    用户6362579
  • Python的itertools模块

    本章将介绍Python自建模块itertools,更多内容请参考:Python参考指南 python的自建模块itertools提供了非常有用的用于操作迭代对...

    用户1174963
  • 数据分析高级教程(二)

    该项目的数据分析过程在hadoop集群上实现,主要应用hive数据仓库工具,因此,采集并经过预处理后的数据,需要加载到hive数据仓库中,以进行后续的挖掘分析。

    我被狗咬了
  • Python学习(七):模块 优雅的封装

    第7 章 模块 优雅的封装 Table of Contents Python中的模块 使用模块 定义模块 建议 模块的安装 模块搜索路径 作用域 编程是一种美德...

    双鬼带单
  • 彻底搞明白PHP中的include和require

    在PHP中,有两种包含外部文件的方式,分别是include和require。他们之间有什么不同呢?

    硬核项目经理

扫码关注云+社区

领取腾讯云代金券