5

Próbuję obliczyć odległości edycyjne ciągu od kolekcji, aby znaleźć najbliższe dopasowanie. Mój obecny problem polega na tym, że kolekcja jest bardzo duża (około 25000 pozycji), więc musiałem zawęzić zestaw do samych łańcuchów o podobnej długości, ale to wciąż ograniczyłoby go do kilku tysięcy ciągów, a to wciąż jest bardzo powolne. Czy istnieje baza danych, która pozwala na szybkie wyszukiwanie podobnych ciągów lub czy istnieje inny sposób rozwiązania tego problemu?Szybkie porównywanie ciągu znaków z kolekcją w Javie

+0

Jak się masz teraz? Czy możesz pokazać kod? –

+3

Zdefiniuj "podobny". –

+0

W podobny sposób porównuję słowa, które są typowymi błędami w pisowni, takimi jak "exanple" i "example" lub "weird" i "wierd". – Lezan

Odpowiedz

2

Jeśli kryteria "podobne" definiują całkowite uporządkowanie, powinieneś być w stanie zdefiniować komparator i użyć TreeSet, aby znaleźć najbliższe dopasowania (np. Używając metody sufitu i podłogi).

Powiązane problemy