問題:文字列の大きな静的リストが提供されます。データとワイルドカード要素 (* と ?) で構成されるパターン文字列。アイデアは、パターンに一致するすべての文字列を返すことです - とても簡単です。
現在の解決策:私は現在、大きなリストをスキャンし、各エントリをパターンに対してグロビングする線形アプローチを使用しています。
私の質問:検索の複雑さが O(n) 未満になるように、大きなリストを格納できる適切なデータ構造はありますか?
おそらく接尾辞-trie に似たものですか?ハッシュテーブルでバイグラムとトリグラムを使用することも検討しましたが、返された単語のリストとパターンのマージに基づいて一致を評価するために必要なロジックは悪夢であり、さらにそれが正しいとは確信していませんアプローチ。