LeetCode 771 宝石与石头

题目描述:

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

J 中的字母不重复,J 和 S中的所有字符都是字母。字母区分大小写,因此"a""A"是不同类型的石头。

示例 1:

输入: J = "aA", S = "aAAbbbb"
输出: 3

示例 2:

输入: J = "z", S = "ZZ"
输出: 0

注意:

  • S 和 J 最多含有50个字母。
  •  J 中的字符不重复。

相关话题:哈希表

解题思路:

  1. 设置一个计数器;
  2. 遍历两个字符串;
  3. 如果两个元素相同;
  4. 计数器递增;
  5. 返回计数器。
class Solution {
public:
    int numJewelsInStones(string J, string S) {
        int count = 0;
        for(int i = 0; i < J.length(); ++i){
            for(int j = 0; j < S.length(); ++j){
                if(J[i] == S[j]){
                    ++count;
                }
            } 
        }
        return count;
    }
};

技术要点:没什么特别要提的,卤煮就不写了。

总结:按照正常的逻辑思维来写就行,没什么特别之处,LeetCode中通过率最高的一个题,就当是熟悉这个网站了。

你可能感兴趣的:(LeetCode在线编程)