美文网首页算法
2018-01-29 J Find in S

2018-01-29 J Find in S

作者: BlackChen | 来源:发表于2018-01-29 09:25 被阅读9次

    You're given strings J representing the types of stones that are jewels, and S representing the stones you have. Each character in S is 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.

    class Solution {
        public int numJewelsInStones(String J, String S) {
            Set<Character> Jset = new HashSet();
            for (char j: J.toCharArray())
                Jset.add(j);
    
            int ans = 0;
            for (char s: S.toCharArray())
                if (Jset.contains(s))
                    ans++;
            return ans;
        }
    }
    

    Time Complexity:
    O(J.length+S.length). The
    O(J.length) part comes from creating J. The
    O(S.length) part comes from searching S.

    Space Complexity:
    O(J.length).

    相关文章

      网友评论

        本文标题:2018-01-29 J Find in S

        本文链接:https://www.haomeiwen.com/subject/wlotzxtx.html