Class Solution


  • public class Solution
    extends Object
    472 - Concatenated Words\. Hard Given an array of strings `words` ( **without duplicates** ), return _all the **concatenated words** in the given list of_ `words`. A **concatenated word** is defined as a string that is comprised entirely of at least two shorter words in the given array. **Example 1:** **Input:** words = ["cat","cats","catsdogcats","dog","dogcatsdog","hippopotamuses","rat","ratcatdogcat"] **Output:** ["catsdogcats","dogcatsdog","ratcatdogcat"] **Explanation:** "catsdogcats" can be concatenated by "cats", "dog" and "cats"; "dogcatsdog" can be concatenated by "dog", "cats" and "dog"; "ratcatdogcat" can be concatenated by "rat", "cat", "dog" and "cat". **Example 2:** **Input:** words = ["cat","dog","catdog"] **Output:** ["catdog"] **Constraints:** * 1 <= words.length <= 104 * `0 <= words[i].length <= 1000` * `words[i]` consists of only lowercase English letters. * 0 <= sum(words[i].length) <= 105
    • Constructor Detail

      • Solution

        public Solution()
    • Method Detail

      • findAllConcatenatedWordsInADict

        public List<String> findAllConcatenatedWordsInADict​(String[] words)