1408. String Matching in an Array #
题目 #
-
给你一个字符串数组
words
,数组中的每个字符串都可以看作是一个单词。请你按 任意 顺序返回words
中是其他单词的子字符串的所有单词。 -
如果你可以删除
words[j]
最左侧和/或最右侧的若干字符得到words[i]
,那么字符串words[i]
就是words[j]
的一个子字符串。
思路 #
模拟 #
代码 #
模拟 #
class Solution {
public List<String> stringMatching(String[] words) {
Set<String> ans = new HashSet();
for (int i = 0; i < words.length; i++) {
for (int j = 0; j < words.length; j++) {
if (j == i) continue;
if (words[j].length() < words[i].length()) continue;
if (words[j].contains(words[i])) ans.add(words[i]);
}
}
return new LinkedList<String>(ans);
}
}