例27 独特的莫尔斯码

1.问题描述

莫尔斯码定义了一种标准编码,把每个字母映射到一系列点和短划线,例如:a->.-,b->-...,c->-.-.。给出26个字母的完整编码表格:

[".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."]。给定一个单词列表,单词中每个字母可以写成莫尔斯码。例如,将cab写成-.-.-....-,(把c,a,b的莫尔斯码串接起来),即为一个词的转换。返回所有单词中不同变换的数量。

2.问题示例

例如,输入words=["gin","zen","gig","msg"],输出2,每一个单词的变换是:

"gin"->"--...-."

"zen"->"--...-."

"gig"->"--...--."

"msg"->"--...--."

也就是有两种不同的变换结果:"--...-."和"--...--."。

3. 代码实现

4.运行结果

输入:['gin','zen','gig','msg']

输出:2