LeetCode之Jewels and Stones(Kotlin)

问题:
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")
}

有问题随时沟通

具体代码实现可以参考Github

你可能感兴趣的:(LeetCode之Jewels and Stones(Kotlin))