-1

入力: 要素のセットとそのカウントの連続ストリーム。つまり、Python セットとしてではなく ADT として設定され、さらに minCount 変数が追加されます。

例えば{'a': 3, 'b':1, 'c':2}, minCount = 3

そのような要素のセットとそのカウントを n 個取得します。minCount は、すべてのセットで静的です。

私がやりたいのは、要素の数が増えるにつれて要素を移動できるデータ構造を持つことです。

minCount が 3 であると仮定します。次に、最初のセットの例を取得すると、 a はAminCount 条件を満たすため 1 つのリストに存在しますが、 b と c は存在せず、 list に存在しますB。カウントの次のセットが

{'a' : 1, 'b' : 2, 'c': 2, 'd':1}

a は全体のカウントが 4 であるため影響を受けませんが、b と c は両方とも 3 を超えているため、最初のリストAには全体のカウントとともに a、b、c が含まれます。d は list になりますB。明らかに、これは 2 つのリストで簡単に実行できます。もう 1 つの方法は、すべての要素をそのカウントとともに取得し、これをパスして minCount を満たす要素を取得することです。

私が説明したよりもこれを行うためのより良い方法はありますか? おおよその答えは必要ありません。

4

1 に答える 1

0

2 つのハッシュ テーブルを使用するのが最善の方法のようminCountです。

ハッシュ テーブルの挿入/検索/更新/削除コストが O(1) と予想される場合、漸近的には、それよりもはるかに優れた処理を行うことはできません。

于 2013-10-15T21:41:48.850 に答える