我持有两个单词列表,比方说listA和listB。 我想检查listB中的每个单词是否包含在listA中。 直观的方法就是去每个单词数组listB和检查:PHP字符串包含一个子字符串
$pos = strpos($word , $listBContent) ;
if($pos != false) { ... }
但恐怕这样的处理过于“昂贵” - 假设listA的和数组listB包含每个n词,复杂性会是O(n^2)。 有什么方法可以用来更有效地运行这个特定的过程? 我想过使用后缀树,但如果可能(以及如何)从单词列表中创建一个,而不是从单个单词创建一个后缀树,我不知道。 任何建议将是有益的, 在此先感谢
我不知道你需要使用'回答你的问题,但在你的代码的情况下! ==',否则如果'$ pos'为0,它将评估为'false'。 – lafor 2012-07-28 21:43:36
尽管这不是重点,但你是对的! – Itamar 2012-07-28 21:46:00
@Itamar:你如何列出看起来像?曾经听说过阵列? – 2012-07-28 21:46:46