LeetCode简单题之数组中第 K 个独一无二的字符串
題目
獨一無二的字符串 指的是在一個數(shù)組中只出現(xiàn)過 一次 的字符串。
給你一個字符串?dāng)?shù)組 arr 和一個整數(shù) k ,請你返回 arr 中第 k 個 獨一無二的字符串 。如果 少于 k 個獨一無二的字符串,那么返回 空字符串 “” 。
注意,按照字符串在原數(shù)組中的 順序 找到第 k 個獨一無二字符串。
示例 1:
輸入:arr = [“d”,“b”,“c”,“b”,“c”,“a”], k = 2
輸出:“a”
解釋:
arr 中獨一無二字符串包括 “d” 和 “a” 。
“d” 首先出現(xiàn),所以它是第 1 個獨一無二字符串。
“a” 第二個出現(xiàn),所以它是 2 個獨一無二字符串。
由于 k == 2 ,返回 “a” 。
示例 2:
輸入:arr = [“aaa”,“aa”,“a”], k = 1
輸出:“aaa”
解釋:
arr 中所有字符串都是獨一無二的,所以返回第 1 個字符串 “aaa” 。
示例 3:
輸入:arr = [“a”,“b”,“a”], k = 3
輸出:""
解釋:
唯一一個獨一無二字符串是 “b” 。由于少于 3 個獨一無二字符串,我們返回空字符串 “” 。
提示:
1 <= k <= arr.length <= 1000
1 <= arr[i].length <= 5
arr[i] 只包含小寫英文字母。
來源:力扣(LeetCode)
解題思路
??顯然要想找出第k個獨一無二的字符串,需要統(tǒng)計字符串的頻率,然后在遍歷的過程中標(biāo)記好第幾個獨一無二的字符串,當(dāng)達(dá)到條件的時候即可返回結(jié)果。
class Solution:def kthDistinct(self, arr: List[str], k: int) -> str:count=0for i,j in collections.Counter(arr).items():if j==1:count+=1if count==k:return ireturn ""
總結(jié)
以上是生活随笔為你收集整理的LeetCode简单题之数组中第 K 个独一无二的字符串的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode简单题之按照频率将数组升
- 下一篇: LeetCode简单题之将找到的值乘以2