我想,如果提供的字符串与任何一个数组的字符串开始比较Java的最佳途径。最简单的解决方案之中:执行字符串startsWith
String b = ...;
boolean matched = false;
for (String a : array) {
if (b.startsWith(a))
match = true;
}
然而,直觉,我想使用类似特里结构以获得更好的效率,因为字符串数组可能增长到相当大的,我需要运行这些比赛很快。我可以保证这些字符串都是按字母顺序排列的。我还可以保证数组中的所有字符串的长度都是2或更小。在Java中实现这种类似于trie的结构的最佳方式是什么?我找不到任何这样做的基于Java的库。
谢谢!
你可能看http://stackoverflow.com/questions/623892/where-do -i-发现 - 一个标准 - 特里基于地图的实现功能于Java或有关分析第一本https://forums.oracle.com/forums/thread.jspa?messageID=8787521 – CPerkins