问题: 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".
方法: 将J中元素存到set中,遍历S同时统计S中包含的J中元素的数量,最后输出统计的结果。
具体实现:
class JewelsAndStones { fun numJewelsInStones(J: String, S: String): Int { val map = mutableSetOf() var count = 0 for (ch in J) { map.add(ch) } for (ch in S) { if (map.contains(ch)) { count++ } } return count }}fun main(args: Array ) { val J = "aA" val S = "aAAbbbb" val jewelsAndStones = JewelsAndStones() val result = jewelsAndStones.numJewelsInStones(J, S) println("result: $result")}复制代码
有问题随时沟通