私はカスタムイテレータを持っています(正確にはTokenIteratorで、トークン化されたphpコードを繰り返します)。アイテムは単純なオブジェクトです(いくつかの正規化メソッドが追加された「プロパティバッグ」)
検索機能を実装する必要があります。これは、1。1つのイテレーターに別のイテレーターが含まれているか2. 2つ(またはそれ以上)のイテレーターが重複しているか(パラメーターがいくらかあるか)を検出する必要があります。
現在、私は(1)-O(NxM)ダブルループ検索にナイーブなアプローチを使用していますが、(2)はまだ実装されていません。
本当にスマートな文字列検索アルゴリズムの再実装を開始する前に、その効果的な実装が存在するかどうかを知りたいですか?たぶん、再利用するために何かがフレームワークやジェネリックライブラリの奥深くに埋もれているのでしょうか?そして、どのアルゴリズムがここで最も適しているでしょうか?