一、题目
给你一个字符串 jewels 代表石头中宝石的类型,另有一个字符串 stones 代表你拥有的石头。 stones 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。
字母区分大小写,因此 "a" 和 "A" 是不同类型的石头。
输入:jewels = "aA", stones = "aAAbbbb" 输出:3
二、思路
- 1 遍历 jewels 数组,把每个字母作为key放入hash表
- 2 遍历stones 数组,如果在hash表存在,result++
三、代码
class Solution {
public int numJewelsInStones(String jewels, String stones) {
HashMap<Character,Integer> tempHash = new HashMap<>();
int result = 0;
for (int i = 0;i<jewels.length();i++){
tempHash.put(jewels.charAt(i),0);
}
for (int i = 0;i<stones.length();i++){
if (tempHash.containsKey(stones.charAt(i))) result++;
}
return result;
}
}