2011-07-01 9 views
2

大学では、コンテナ(スタック、キュー、テーブル)、辞書、優先キューという3つの主要な抽象データ型を学習しました。このような高いレベルでADTをグループ化する方法は無制限ですが、これは良いスタートです。辞書ADTを選択するタイミング

私は実際に計算上の問題を解決するためにディクショナリADTを選択するとは分かりません。スタックとキューは自然に出てきますが、辞書は出てこないようです。

私が考えることができる1つの例は、現実の世界で使用する意味での辞書です。辞書は、検索の高速化のために単語を保持し、順序付けしています。単語を検索すると、正しいスペル、単語の発音、品詞、単語の定義などが得られます。

私がそれをよく理解し始めているので、 "辞書"のように思えば、データベースに問い合わせることも考えられます。 SQL SELECT文を書くときには、主キーが特定の値に等しいときにいつでも(いつもと同じではなく、テーブルに存在するどのフィールドでも選択できます)を探しています。

これはディクショナリADTを考える正しい方法ですか?または、これより限定された目的の使用です...

答えて

1

あなたのSQLの例はかなり正確です。あなたはそれに関連するいくつかのフィールド(値)を取得するために主キー(辞書エントリのキー)を探しています。

個人的には私のゲームプログラミングコースで有用な辞書が見つかりました。私は自分のリソースをロードして、後で使うために辞書にキャッシュします。このようにして、特定のリソースのインデックス番号を知る必要はなく、リソースに関連するキーを与えることができました。

関連する問題