0

listA と listB としましょう。リストAに含まれているかどうか、リストBのすべての単語をチェックしたい。直感的な方法は、listB の各単語を調べてチェックすることです。

$pos = strpos($word , $listBContent) ; 
if( $pos != false) { ... } 

しかし、この種のプロセスは「高価」すぎるのではないかと心配しています。listA と listB にそれぞれ n 個の単語が含まれていると仮定すると、複雑さは O(n^2) になります。この特定のプロセスをより効率的に実行するために使用できる方法はありますか? 接尾辞ツリーを使用することを考えましたが、単一の単語からではなく、単語のリストから作成できるかどうか (およびその方法) がわかりません。どんな提案も役に立ちます、事前に感謝します

4

1 に答える 1

0

という関数がありますarray_intersect

<?php
$array1 = array("a" => "green", "red", "blue");
$array2 = array("b" => "green", "yellow", "red");
$result = array_intersect($array1, $array2);
print_r($result);
?>
于 2012-07-28T21:42:10.320 に答える