题目:leetcode 771:宝石与石头

算法思想:本来应该是哈希的,但是你会发现运行时间比较大,主要原因是这道题数据比较小,所以我们可以换一种做法。因为都是字符,直接创建一个数组控制ASCII是否出现过,然后查找很方便。

 

代码:

int numJewelsInStones(string J, string S) {
        vector<bool > a(256);
        for(int i = 0;i < J.length();i++)
        {
            a[J[i] ] = true;
        }
        int count = 0;
        for(int i = 0;i < S.length();i++)
            if(a[S[i] ] == true)
                count++;
        return count;
}

相关文章: