Given a string array
Example 1:
Input: words = ["bella","label","roller"] Output: ["e","l","l"]
Example 2:
Input: words = ["cool","lock","cook"] Output: ["c","o"]
Constraints:
1 <= words.length <= 100 1 <= words[i].length <= 100 words[i] consists of lowercase English letters.
Solution
主要差別是要從多個比較對象裡面找到交集的所有字元,包含重複字元
所以在作法上有點修正
這次每個 word 都用一個 IntArray(26) 去記錄 a到z中,每個字元出現的次數
然後過程中,也紀錄每個字元最少出現的次數
如果有一個字元在某個 word 沒出現,那麼最後的值一定要是 0,因為不符合要找的
如果有一個字元都有在每個 word 出現,那次數要取最小的
最後再拼裝成答案就行
kotlin
沒有留言:
張貼留言