【发布时间】:2019-06-16 09:29:30
【问题描述】:
我有两个字符串数组。一个数组中的字符串可能是另一个数组中字符串的子集。我需要找出一个数组中的所有字符串是另一个数组中字符串的子字符串
例子:
arr1 = ["firestorm", "peanut", "earthworm"]
arr2 = ["fire", "tree", "worm", "rest"]
结果:
res = ["fire","worm", "rest"]
下面提到了我的解决方案。但这需要很多时间。我必须处理数千个单词。
解决方案:
res =[]
arr1.each do |word1|
arr2.each do |word2|
if word1.include? word2
res << word2
end
end
end
请建议我更快的方法来做到这一点
【问题讨论】:
-
如果您有解决方案,请将其包含在您的问题中。我们试图重新发明您已经完成的工作毫无意义,我们可以在您现有的工作的基础上再接再厉。
-
假设
arr1 = ['ab']和arr2 = ['b', 'a']。期望的返回值是多少,为什么? -
ruby 显然不擅长这样的事情。你应该考虑redis中的全文搜索功能。 github.com/vruizext/redisearch-rb
-
“子集”一词意味着您提到
arr1是arr2的子集。你真的是想说“子字符串”吗? -
我错过了什么吗?为什么投反对票?
标签: arrays ruby string substring