1 问题抛出

You’re given strings J representing the types of stones that are jewels, and S representing the stones you have. Each character in S is a type of stone you have. You want to know how many of the stones you have are also jewels.

The letters in J are guaranteed distinct, and all characters in J and S are letters. Letters are case sensitive, so “a” is considered a different type of stone from “A”.

Example 1:

Input: J = "aA", S = "aAAbbbb"
Output: 3

Example 2:

Input: J = "z", S = "ZZ"
Output: 0

Note:

S and J will consist of letters and have length at most 50.
The characters in J are distinct.

编码实现

1.第一种解法是用暴力匹配的方法,把S字符串中的每个字符,验证在J字符串中是否出现,每出现一次S中的字符,就把统计的个数加1.代码实现如下:

func numJewelsInStones(J string, S string) int {count := 0if J != "" && S != "" {for _, s := range S {for _, j := range J {if s == j {count++}}}    }return count
}fun main() {J := "aA"S := "aAAbbbb"fmt.Println(numJewelsInStones(J, S))
}

2.从写法上来讲,golang的字符串模块strings提供了一种查找的方法strings.Count(S, v),代码可以修改为:

func numJewelsInStones(J string, S string) int {res := 0for _, v := range strings.Split(J, "") {res += strings.Count(S, v)}return res
}

这个算法题的主要思想就是要进行字符匹配,欢迎大家给出其他解法。

Jewels and Stones(宝石和石头)相关推荐

  1. 1. Jewels and Stones (宝石与石头)

    Jewels and Stones leetcode 771 题目 You're given strings J representing the types of stones that are j ...

  2. 771. Jewels and Stones 宝石与石头

    给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头. S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石. J 中的字母不重复,J 和 S中的所有字符都是字母 ...

  3. Leetcode771.Jewels and Stones宝石与石头

    给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头. S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石. J 中的字母不重复,J 和 S中的所有字符都是字母 ...

  4. 宝石与石头(简单难度)

    目录 题目概述(简单难度) 思路与代码 思路展现 代码示例 总结 题目概述(简单难度) 题目链接: 宝石与石头 思路与代码 思路展现 将jewels字符串转换为字符后存入到set集合当中,然后将sto ...

  5. Leetcode771:宝石与石头

    原文链接:771. 宝石与石头 - 力扣(LeetCode) 题目 给你一个字符串 jewels 代表石头中宝石的类型,另有一个字符串 stones 代表你拥有的石头.stones 中每个字符代表了一 ...

  6. 【每日一题】宝石与石头

    题目描述 给你一个字符串 jewels 代表石头中宝石的类型,另有一个字符串 stones 代表你拥有的石头. stones 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石 ...

  7. 3600、宝石与石头

    给你一个字符串 jewels 代表石头中宝石的类型,另有一个字符串 stones 代表你拥有的石头. stones 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石. 字母区 ...

  8. LeetCode 771. 宝石与石头(java)

    给你一个字符串 jewels 代表石头中宝石的类型,另有一个字符串 stones 代表你拥有的石头. stones 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石. 字母区 ...

  9. 【leetcode】771. 宝石与石头 (简单)

    [leetcode]771. 宝石与石头 给你一个字符串 jewels 代表石头中宝石的类型,另有一个字符串 stones 代表你拥有的石头. stones 中每个字符代表了一种你拥有的石头的类型,你 ...

最新文章

  1. FFmpeg代码实现视频剪切
  2. Codeforces 1196A Three Piles of Candies
  3. 二十三、PHP框架Laravel学习笔记——集合的常用方法
  4. 给 c# 程序员的十个重要提示
  5. H3C进入目录---用户视图
  6. 树莓派python智能家居_用树莓派DIY一个智能家居服务器
  7. 面试被问离职原因该怎么回答?
  8. 零基础Bootstrap入门教程(19)--下拉菜单、按钮式下拉菜单
  9. 什么是SLA?SLA服务水平深度解析
  10. 网页title如何优化
  11. JEECG生成的代码详解
  12. 跨专业考研应该怎么做?
  13. 【愚公系列】2021年12月 网络工程-进制转换
  14. 【转】国人须知道的76个常识
  15. 武汉新时标文化传媒有限公司:从用户体验的角度分析抖音
  16. 2020.7.7_ie_12_VXLAN
  17. 苹果 Fitness+ Apple Watch“去散步”即将推出
  18. 【2017年第2期】大数据的若干基础研究方向
  19. 汽车品牌、资讯、出行App获取安装来源统计
  20. 掌握计算机维护搭配动词,欣然怒放的意思:三年级数学搭配:计算机专业实习报告...

热门文章

  1. [AHK]Excel 怎么使用鼠标滚轮控制表格左右移动
  2. 学计算机的去香港读研可以吗,香港大学计算机硕士有面试吗?
  3. 信息安全敲门砖Security+认证题库分享
  4. HTML5视频监控技术预研
  5. 工作流(三)_什么是工作流管理系统
  6. 人生第一次心理咨询逐字稿以及分析
  7. JAVA加密--AES加密算法JAVA实现及使用中的各种坑,超实用
  8. leetcode 1363 形成三的最大倍数(C++)
  9. 2021年12月中国汽车发动机生产企业销售量排行榜:排名前三的企业销量环比均有所增长,且只销售汽油发动机(附月榜TOP58详单)
  10. Scatterfile分散加载文件和 mem.scf