2017-12-02 22 views
1

データ構造を勉強しているうちに、私は質問を思いつきました。データ構造 - 抽象データ型(ADT)VS具体的データ型(CDT)

CDTは、本格的なADT、つまりADTの実装です。

したがって、.hファイルは実際にはADT(操作のみであり、実行方法についての説明はありません)です。

しかし、実装ファイルの横に.cppファイルを表示します。

我々は、すなわち、配列またはリンクされたリストを具体的なデータ構造を使用して、スタックの具体的なデータ型を作ったと結論づけることはできますか?

その場合ですか?私が間違っていれば私を修正してください。

答えて

0

アレイ、リストやツリーは、具体的なデータ型です。それらは、典型的にはコンピュータ言語によって提供される基本的なデータ構造である。 スタック、キュー、ヒープは抽象データ型です。それらはちょうどアイデア、すなわち定義された挙動を有する「ブラックボックス」である。それらを実装するには、適切な具象データ型を選択する必要があります。 特に、スタックやキューは、配列やリンクリストで実装できます。 ヒープは、アレイ又は二分木

0

ええと、ない非常に、少なくとも用語の従来の使用にすることによって実現することができます。

抽象データ型は、利用可能な状態と操作のステートメントに基づいてmathematical model of a typeです。

抽象的なクラスは完全に実装されていないクラスなので、具体的なクラスを作るために洗練されている必要があります。

.hファイルは、クラスによって提供されるインターフェイスを指定します。しかし、インライン化などを考えると、抽象的/具体的な区別にはうまく適合しません。具体的なクラスを完全に実装する.hファイルを持つことができます。

関連する問題