0

これは理論上の質問なので、疑似コードを使用します。

別のリストに変換する必要があるオブジェクトのリストがあります。

私はレーベンシュタイン アルゴリズムを実装しました。これは問題なく動作しますが、新しいオブジェクトを作成するのではなく、オブジェクトを保持する必要があります。私はそれを強引に行うことができますが、これを行うには O(n*m) 以外の方法を見つけたいと思います。

[obj1,obj2,obj3] -> [obj1,obj4,obj5,obj2,obj6,obj3]

obj1、obj2、obj3 は同じオブジェクトである必要があり、残りは新しく作成されたオブジェクトです。

これに適したアルゴリズムを知っている人はいますか?

4

1 に答える 1

1

パターンflyweightを使用できます。これを行うには、作成されたオブジェクトをキャッシュに保持する必要があります。Java の文字列は、このパターンの良い例です。

于 2012-08-17T17:41:28.727 に答える