我已經實現這些基團類似使用文本環路定製紅寶石方法的陣列,是可能的組串的基礎上在紅寶石相似度
array = ["South East Queensland", "Wide Bay Burnett", "Margaret River", "Port Pirie", "Gippsland", "Elizabeth", "Barossa"]
similarity_group = []
similarity_percentage = 60.0
array.each do |first_text|
results.each do |second_text|
result = first_text.upcase.similar(second_text.upcase)
if result >= similarity_percentage
...
...
...
end
end
end
考慮上述實施2000元件,然後以組他們將花費4000000次迭代,因爲每個元素都會互相檢查。
是否有任何高性能解決方案或寶石或庫,如基於它們的相似性來分組批量數組。
(我需要使用的相似性檢查相同的數組元素)
樣的期望:[array1].similarity([array1])
'similar'從哪裏來?它來自寶石嗎?哪一個? –
注意:您可以使用'first_text'兩次。我認爲相似性總是1 :)一個明顯的優化是隻有在'string1> = string2'時才檢查2個字符串。它將迭代減半。 –