words中的word转化为摩尔斯码,丢到set里,计算set长度。
class Solution: def uniqueMorseRepresentations(self, words: List[str]) -> int: map = [".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."] if len(words) == 1:return 1 if len(words) == 0:return 0 dic = collections.defaultdict(int) for word in words: morse = '' for le in word: morse += map[ord(le) - ord('a')] dic[morse] += 1 res = 0 for morse, value in dic.items(): res += 1 return res