Jewels and Stones leetcode java solution

Jewels and Stones leetcode java solution

Jewels and Stones


You're given strings jewels representing the types of stones that are jewels, and stones representing the stones you have. Each character in stones is a type of stone you have. You want to know how many of the stones you have are also jewels.

Letters are case sensitive, so "a" is considered a different type of stone from "A".

 

Example 1:

Input: jewels = "aA", stones = "aAAbbbb"
Output: 3

Example 2:

Input: jewels = "z", stones = "ZZ"
Output: 0

 

Constraints:

  • 1 <= jewels.length, stones.length <= 50
  • jewels and stones consist of only English letters.
  • All the characters of jewels are unique.

Solution:

class Solution {
    public int numJewelsInStones(String jewels, String stones) {
     int count=0;
        for(int i=0; i<jewels.length(); i++)
        {
            for(int j=0; j<stones.length(); j++)
            {
                if(jewels.charAt(i)==stones.charAt(j))
                {
                    count++;
                }
            }
        }
        return count;
    }
}

Time complexity : len(jewels)*len(stones)

Solution: 


public int numJewelsInStones(String jewels, String stones)
 {
int count=0;
ArrayList<Character> list=new ArrayList<>();
for(int i=0; i<jewels.length(); i++)
{
  list.add(jewels.charAt(i));
}
for(int i=0; i<stones.length(); i++)
{
if(list.contains(stones.charAt(i)))
{
count++;
}
}
return count;
 }


Time complexity : len(jewels+stones)

Post a Comment

0 Comments