博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Unique Word Abbreviation
阅读量:6463 次
发布时间:2019-06-23

本文共 1391 字,大约阅读时间需要 4 分钟。

1 public class ValidWordAbbr { 2     private Map
> dict; 3 public ValidWordAbbr(String[] dictionary) { 4 dict = new HashMap<>(); 5 for (String word : dictionary) { 6 String str = processStr(word); 7 if (!dict.containsKey(str)) { 8 dict.put(str, new HashSet<>()); 9 }10 dict.get(str).add(word);11 }12 }13 14 public boolean isUnique(String word) {15 String str = processStr(word);16 if (!dict.containsKey(str) || dict.get(str).contains(word) && dict.get(str).size() == 1) {17 return true;18 }19 return false;20 }21 22 private String processStr(String word) {23 if (word.length() <= 2) {24 return word;25 }26 StringBuilder result = new StringBuilder();27 result.append(word.charAt(0));28 result.append(word.length() - 2);29 result.append(word.charAt(word.length() - 1));30 return result.toString();31 32 }33 }34 35 36 // Your ValidWordAbbr object will be instantiated and called as such:37 // ValidWordAbbr vwa = new ValidWordAbbr(dictionary);38 // vwa.isUnique("Word");39 // vwa.isUnique("anotherWord");

 

Remember: need to check whether has the word in hashset and garantee size is one.

转载于:https://www.cnblogs.com/shuashuashua/p/5646805.html

你可能感兴趣的文章
Linux平台下使用rman进行oracle数据库迁移
查看>>
全栈工程师学习Linux技术的忠告
查看>>
iOS自定制tabbar与系统的tabbar冲突,造成第一次点击各个item图片更换选中,第二次选中部分item图片不改变...
查看>>
C# Dictionary用法总结
查看>>
SVN服务器使用(二)
查看>>
反射获取内部类以及调用内部类方法
查看>>
C语言 - pthread
查看>>
谈Linq To Sql的优劣--纯个人观点
查看>>
HDU 4996 Revenge of LIS(DP)
查看>>
App里面如何正确显示用户头像
查看>>
DATAGUARD维护:从库宕机后如何恢复到管理恢复模式
查看>>
Android中的PID和UID
查看>>
U-BOOT之一:BootLoader 的概念与功能
查看>>
我的路上
查看>>
Velocity处理多余空白和多余空白行问题
查看>>
内容开发平台(PLATFORM)
查看>>
java值传递
查看>>
判断一个数是否为素数的一个讨论(一)
查看>>
DB2与oracle有什么区别
查看>>
创建一个多级文件目录
查看>>