Tôi có nhiều tập hợp url và tôi muốn triển khai tự động hoàn thành. Tôi không thích sự phức tạp của cách tiếp cận ngây thơ vì nó là tuyến tính với kích thước thiết lập:Cách tạo chỉ mục tiền tố đơn giản trong Java?
for(String url: urls) if(url.startsWith(input) {doSomething();}
Bây giờ tôi biết rằng trong một Hash Set, chức năng "chứa()" công trình "O (1) "nhưng không có" containsPrefix() ". Có cách nào đơn giản mà không cần sử dụng một thư viện lớn như Lucene hay tự viết mã? Tôi sẽ không có vấn đề gì nhưng nó có vẻ quá mức cần thiết cho một vấn đề đơn giản như vậy vì vậy tôi muốn biết nếu có một giải pháp đơn giản :-)
Từ các lớp khoa học máy tính của tôi Tôi nhớ một cây bao gồm các đoạn chuỗi Tôi quên nó được gọi như thế nào. Nó hoạt động như sau:
[car, care, carrot,carrotville]->
car
|
-/
-e
-rrot
|
----ville
P .: Làm cách nào để gọi các phương thức trả về tất cả các chuỗi mà một chuỗi là tiền tố? Giống như tiền tố a là b, b là gì?
bạn muốn làm gì? tự động thêm một số văn bản vào đầu mỗi chuỗi? –
Tôi muốn biết chuỗi của tôi là tiền tố để tôi có thể cung cấp cho họ như là các đề xuất tự động hoàn thành. –