zoukankan      html  css  js  c++  java
  • Word Pattern

    Given a pattern and a string str, find if str follows the same pattern.

    Examples:

    1. pattern = "abba", str = "dog cat cat dog" should return true.
    2. pattern = "abba", str = "dog cat cat fish" should return false.
    3. pattern = "aaaa", str = "dog cat cat dog" should return false.
    4. pattern = "abba", str = "dog dog dog dog" should return false.

    Notes:

    1. patterncontains only lowercase alphabetical letters, and str contains words separated by a single space. Each word in str contains only lowercase alphabetical letters.
    2. Both pattern and str do not have leading or trailing spaces.
    3. Each letter in pattern must map to a word with length that is at least 1.

    用两个Hashmap!

      

     1     public boolean wordPattern(String pattern, String str) 
     2     {
     3         String[] words;
     4         Map<String, Character> map1 = new HashMap<>();
     5         Map<Character,String> map2 = new HashMap<>();
     6         words = str.split(" ");
     7         if(pattern.length()!=words.length) return false;
     8         for(int i = 0; i<words.length;i++)
     9         {
    10             if(map1.containsKey(words[i]))
    11             {
    12                 Character index = map1.get(words[i]);
    13                 if (index != pattern.charAt(i)) return false;
    14             }
    15             
    16             
    17             if(map2.containsKey(pattern.charAt(i)))
    18             {
    19                 String index = map2.get(pattern.charAt(i));
    20                 if (!index.equals(words[i])) return false;
    21             }
    22             
    23             
    24             map1.put(words[i],pattern.charAt(i));
    25             map2.put(pattern.charAt(i),words[i]);
    26         }
    27         return true;
    28     
    29     }
  • 相关阅读:
    dd命令的巧妙使用
    home目录迁移至新分区
    swap分区的扩展
    搭建多系统yum服务器
    校验软件是否被黑客所修改
    源码编译安装Apache-附一键部署脚本
    yum仓库详细解读
    将FTP映射至Windows
    最简化搭建yum仓库
    校验Linux程序是否被黑客修改
  • 原文地址:https://www.cnblogs.com/hygeia/p/4858307.html
Copyright © 2011-2022 走看看