宝石与石头| 刷题打卡

132 阅读1分钟

本文正在参与掘金团队号上线活动,点击 查看大厂春招职位

一,题目描述

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

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

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

二,思路分析

1.首选传入的为字符串,作对比的话都转换为数组(split)

2.转换为字符串后通过双层循环实现对比

3.设置num 符合条件则+1

三,AC

var numJewelsInStones = function(jewels, stones) {
    let jArr = jewels.split('')
    let sArr = stones.split('')
    let num = 0
    for(let i=0; i<jArr.length; i++){
        for(let j=0; j<sArr.length; j++){
            if(sArr[j] == jArr[i]) num++
        }
    }
    return num
};

四,总结

双层循环注意length的获取