https://leetcode.com/problems/jewels-and-stones/
You’re given strings J representing the types of stones that are jewels, and S representing the stones you have. Each character in Sis 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.
Solution:
class Solution {
public int numJewelsInStones(String J, String S) {
char [] s = new char[100];//新建一个字符数组来存储Jewels中的每一个元素
int counter = 0;//计数器
for (int i = 0; i < J.length(); i++){//将Jewels中的元素取出,放入字符数组s中
s[i] = J.charAt(i);
}
for(int j = 0; j < S.length(); j++){//大循环:对Stone进行遍历
for (int k = 0; k < J.length(); k++){//小循环:用s中的每一个元素和Stone中的元素比较
if (s[k] == S.charAt(j))
counter++;
}
}
return counter; //返回计数器
}
}