LeetCode 771. 宝石与石头

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

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

解:将字符哈希,用一个大小为256的字符数组即可:

class Solution {
public:
    int numJewelsInStones(string J, string S) {
        int arr[256] = {0};
        
        for (char c : J) {
            arr[c] = 1;
        }
        
        int res = 0;
        for (char c : S) {
            if (arr[c] == 1) {
                res += 1;
            }
        }

        return res;
    }
};
posted @   epiphanyy  阅读(3)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
历史上的今天:
2020-02-25 剑指offer 学习笔记 链表中倒数第k个节点
2019-02-25 用奇数的平方个数字填在矩阵中,使横,竖,斜相加的数字和都相等
点击右上角即可分享
微信分享提示