LeetCode 527. 单词缩写(Trie树)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 527. 单词缩写(Trie树)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1. 題目
- 2. 解題
1. 題目
給定一個由n個不重復非空字符串組成的數組,你需要按照以下規(guī)則為每個單詞生成最小的縮寫。
- 初始縮寫由起始字母+省略字母的數量+結尾字母組成。
- 若存在沖突,亦即多于一個單詞有同樣的縮寫,則使用更長的前綴代替首字母,直到從單詞到縮寫的映射唯一。換而言之,最終的縮寫必須只能映射到一個單詞。
- 若縮寫并不比原單詞更短,則保留原樣。
來源:力扣(LeetCode) 鏈接:https://leetcode-cn.com/problems/word-abbreviation
著作權歸領扣網絡所有。商業(yè)轉載請聯(lián)系官方授權,非商業(yè)轉載請注明出處。
2. 解題
- 對字符串進行分組(首尾字符+長度),這種情況,縮寫才可能一樣
- 組內單詞插入trie樹,記錄每個節(jié)點的占用次數,如果只出現1個人占用的,即可以確定唯一的縮寫
332 ms 330.2 MB
我的CSDN博客地址 https://michael.blog.csdn.net/
長按或掃碼關注我的公眾號(Michael阿明),一起加油、一起學習進步!
總結
以上是生活随笔為你收集整理的LeetCode 527. 单词缩写(Trie树)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 1484. 克隆含随机
- 下一篇: LeetCode 1665. 完成所有任