Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 高效的数据结构;型号“;子串搜索_Java_Search_Substring - Fatal编程技术网

Java 高效的数据结构;型号“;子串搜索

Java 高效的数据结构;型号“;子串搜索,java,search,substring,Java,Search,Substring,我们有一个问题,我们想在大量[1MM-10MM]的字符串(“型号”)上进行子字符串搜索,快速识别包含给定子字符串的任何“型号”。型号是短字符串,例如: ABB1924DEW WTW9400PDQB GLEW1874 目标很简单,给定一个子字符串,快速找到与该子字符串匹配的所有型号。例如(在上面的模型编号中),如果我们搜索字符串“EW”,函数将返回GLEW1874和ABB1924DEW(因为两者都包含子字符串EW) 数据结构还需要能够支持快速搜索以给定子字符串开头和/或以给定子字符串结尾的型号。例

我们有一个问题,我们想在大量[1MM-10MM]的字符串(“型号”)上进行子字符串搜索,快速识别包含给定子字符串的任何“型号”。型号是短字符串,例如:

  • ABB1924DEW
  • WTW9400PDQB
  • GLEW1874
  • 目标很简单,给定一个子字符串,快速找到与该子字符串匹配的所有型号。例如(在上面的模型编号中),如果我们搜索字符串“EW”,函数将返回GLEW1874和ABB1924DEW(因为两者都包含子字符串EW)

    数据结构还需要能够支持快速搜索以给定子字符串开头和/或以给定子字符串结尾的型号。例如,我们需要能够快速地进行WTW…B之类的搜索(这将与WTW9400PDQB匹配,因为它以WTW开头,以B结尾)

    我要寻找的是一个内存中的数据结构,它可以非常有效地执行这些搜索。理想情况下,在Java中也会有一个很好的(简单的)实现,我们可以使用它。简单(和快速)比优步复杂(和稍微快一点)要好。简单的算法(只需循环所有零件号,对每个零件进行子字符串搜索)对于我们来说太慢了,我们正在寻找更快的算法(预组装ok)


    那么,这个问题的教科书数据结构/算法是什么?

    您需要的是一个。我不知道有什么Java库可以推荐,所以你可能必须自己实现一个

    是的,当你花时间帮助ppl,而他们甚至懒得投票支持你的答案时,这是非常令人沮丧的。