zoukankan      html  css  js  c++  java
  • LeetCode 804. Unique Morse Code Words

    804. Unique Morse Code Words(唯一摩尔斯密码词)

    题目:

      

      国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, 比如: "a" 对应 ".-""b"对应 "-...""c" 对应 "-.-.", 等等。

      为了方便,所有26个英文字母对应摩尔斯密码表如下:

      [".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."]

      给定一个单词列表,每个单词可以写成每个字母对应摩尔斯密码的组合。例如,"cab" 可以写成 "-.-..--...",(即 "-.-." + "-..." + ".-"字符串的结合)。我们将这样一个连接过程称作单词翻译。

      返回我们可以获得所有词不同单词翻译的数量。

      例如:
      输入: words = ["gin", "zen", "gig", "msg"]
      输出: 2
      解释: 
      各单词翻译如下:
      "gin" -> "--...-."
      "zen" -> "--...-."
      "gig" -> "--...--."
      "msg" -> "--...--."
    
      共有 2 种不同翻译, "--...-." 和 "--...--.".

      注意:

      •  单词列表words 的长度不会超过 100
      •  每个单词 words[i]的长度范围为 [1, 12]
      •  每个单词 words[i]只包含小写字母。

    思路:

      这道题的思路比较清晰,对于每一个word,将之转换为摩斯电码,使用hashset存储,最后统计这个散列表里面的值即可。

    代码:

     1     public static int uniqueMorseRepresentations(String[] words) 
     2     {
     3         String[] codes={".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."};
     4         HashSet<String> hashset=new HashSet<String>();
     5         for (int i = 0 ;i < words.length;i++) 
     6         {
     7             String word = words[i];
     8             StringBuilder sc=new StringBuilder("");
     9             for(int j = 0; j < word.length(); j++)
    10             {
    11                 sc.append(codes[word.charAt(j)-97]);
    12             }
    13             hashset.add(sc.toString());
    14         }
    15         return hashset.size();
    16     }
    View Code
  • 相关阅读:
    【杂谈】操作系统如何有效地掌控CPU
    【API知识】一种你可能没见过的Controller形式
    【详解】Tomcat是如何监控并删除超时Session的?
    【API知识】RestTemplate的使用
    【杂谈】Tomcat 之 Lifecycle接口
    【杂谈】FilterChain相关知识整理
    【杂谈】Remember-Me的实现
    【杂谈】没有公网IP的电脑如何与外部通信
    【杂谈】tocmat是何时写回响应数据报的
    js的class基础
  • 原文地址:https://www.cnblogs.com/blogxjc/p/10886198.html
Copyright © 2011-2022 走看看