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

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

Note:

This is kind of recurrsive dedup questions.

class Solution {    public List
wordsAbbreviation(List
dict) { List
result = new ArrayList<>(); int[] prefix = new int[dict.size()]; String[] current = new String[dict.size()]; for (int i = 0; i < current.length; i++) { prefix[i] = 1; current[i] = addAbb(dict.get(i), 1); } for (int i = 0; i < current.length; i++) { while (true) { Set
dups = new HashSet<>(); for (int j = i + 1; j < current.length; j++) { if (current[j].equals(current[i])) { dups.add(j); } } if (dups.size() == 0) break; dups.add(i); for (int dup : dups) { current[dup] = addAbb(dict.get(dup), ++prefix[dup]); } } result.add(current[i]); } return result; } private String addAbb(String s, int len) { if (len >= s.length() - 2) return s; StringBuilder result = new StringBuilder(); result.append(s.substring(0, len)).append(s.length() - len - 1).append(s.charAt(s.length() - 1)); return result.toString(); }}

 

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

你可能感兴趣的文章
高校 WiFi 9 大谬论
查看>>
CyrusOne计划在美国德克萨斯建设大型数据中心园区
查看>>
暴风热点 要的不仅仅是免费WIFI
查看>>
MSR路由器的未来之路
查看>>
《C语言程序设计:问题与求解方法》——3.10节提高部分
查看>>
《数据库基础及实践技术——SQL Server 2008》一3.3 查看和设置数据库选项
查看>>
边缘计算将蚕食云计算,可能吗?
查看>>
《Linux内核修炼之道》——1.3 获取内核源码
查看>>
阿里云前端周刊 - 第 12 期
查看>>
GNOME 3.26 将对控制中心进行大改进
查看>>
《CCNP ROUTE (642-902 )认证考试指南》一第1章 CCNP考试中的规划任务
查看>>
名落孙山之后, Edge 浏览器发布一大波新功能
查看>>
树莓派使用 DHT11 温湿度传感器
查看>>
《高可用架构·中国初创故事(第3期)》一1.6 了解客户
查看>>
《大数据管理概论》一3.5 小结
查看>>
针对今天客户提出的问题IE8 浏览器文本模式变为杂项解决方法
查看>>
《深入理解Scala》——导读
查看>>
用Python开源机器人和5美元,我在Instagram上搞到了2500个真粉儿
查看>>
《树莓派开发实战(第2版)》——2.9 利用RDP远程控制树莓派
查看>>
《流量的秘密 Google Analytics网站分析与商业实战》一1.2 网站的衡量标准有何不同...
查看>>