0

シャツにはさまざまな種類があります。品種は、パターン、サイズ、色などのパラメータに基づいています。

すべてのタイプのシャツが利用可能であると仮定します。現在、次のようなさまざまなクエリがあります。

Show all types of shirt having colour “red”.

Show all types of shirt having size “small” and pattern “checks” etc. etc.

では、「K」種類の異なる品種と N 枚のシャツがあると仮定すると、次のデータを格納し、上記のクエリに最適な方法で答えるために、どのようなデータ構造を設計できますか?

私が考えた1つの明白な解決策は、データの「K」個のインスタンスを、それぞれの種類に応じてグループ化して保存することです。しかし、それは非常にスペース効率が悪いでしょう。

空間/時間の境界を念頭に置いて、何ができるでしょうか?

4

1 に答える 1

1

各アイテムのストアKポインターは、同じ K 番目の種類の次のアイテムを示します。

次に、クエリごとに、1 つの種類を選択し、その種類を満たすすべてのアイテムを列挙し、他の制約を満たしているかどうかを確認して表示します。したがってO(NK)O(1)スペースがO(NK).

あなたのシナリオはデータベースのように見えます。それをチェックしてみませんか。

于 2013-08-21T18:55:06.920 に答える