[LeetCode] Longest Word In Dictionary
Posted immjc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[LeetCode] Longest Word In Dictionary相关的知识,希望对你有一定的参考价值。
Given a list of strings words
representing an English Dictionary, find the longest word in words
that can be built one character at a time by other words in words
. If there is more than one possible answer, return the longest word with the smallest lexicographical order.
If there is no answer, return the empty string.
Example 1:
Input: words = ["w","wo","wor","worl", "world"] Output: "world" Explanation: The word "world" can be built one character at a time by "w", "wo", "wor", and "worl".
Example 2:
Input: words = ["a", "banana", "app", "appl", "ap", "apply", "apple"] Output: "apple" Explanation: Both "apply" and "apple" can be built from other words in the dictionary. However, "apple" is lexicographically smaller than "apply".
Note:
- All the strings in the input will only contain lowercase letters.
- The length of
words
will be in the range[1, 1000]
. - The length of
words[i]
will be in the range[1, 30]
.
class Solution { public: string longestWord(vector<string>& words) { sort(words.begin(), words.end()); unordered_set<string> ss; string res; for (string word : words) { if (word.size() == 1 || ss.count(word.substr(0, word.size() - 1))) { res = word.size() > res.size() ? word : res; ss.insert(word); } } return res; } }; // 46 ms
以上是关于[LeetCode] Longest Word In Dictionary的主要内容,如果未能解决你的问题,请参考以下文章
[LeetCode] Longest Word In Dictionary
[leetcode]Trie-720. Longest Word in Dictionary
[LeetCode] 524. Longest Word in Dictionary through Deleting
leetcode 720 - Longest Word in Dictionary