题目:给定一个字符串J代表宝石中的宝石类型,字符串S代表你拥有的宝石。S中的每个字符代表您拥有的一种宝石,您想知道您拥有的宝石中有多少是宝石。您得到的字符串J代表宝石类型,S代表您拥有的宝石。S中的每个字符都是您拥有的一种石头。您想知道您拥有的宝石中有多少也是珠宝。J中的字母不重复,J和S中的字符都是字母。字母区分大小写,因此“a”和“A”是不同类型的石头。J中的字母保证不同,J和S中的所有字符都是字母。字母区分大小写,因此“a”被认为是与“A”不同的宝石类型。示例1:输入:J="aA",S="aAAbbbb"输出:3示例2:输入:J="z",S="ZZ"输出:0注意:S和J最多可以包含50个字母。J中的字符不重复。注意:S和J将由字母组成,长度最多为50。J中的字符是不同的。解题思路:把J换成Set集合,遍历S(因为Set的查找复杂度不变)();for(charc:J.toCharArray())set.add(c);整数计数=0;for(charc:S.toCharArray())if(set.contains(c))count++;返回计数;}}Python:class解决方案:defnumJewelsInStones(self,J:str,S:str)->int:count=0hash_set=set(J)forcinS:ifcinhash_set:count+=1returncount
