因此,在研究数据结构时,我提出了一个问题。
CDT是一个完全成熟的ADT,即ADT的实现。
因此.h文件实际上是一个ADT(只有操作,不讨论它们将如何执行)。
但是通过显示.cpp文件,即实现文件。
我们能否得出结论,我们使用具体的数据结构(即数组或链表)制作了具体数据类型的堆栈?
是这样的吗?如果我错了,请纠正我。
答案 0 :(得分:0)
数组,列表和树是具体的数据类型。它们是通常由计算机语言提供的基本数据结构。 堆栈,队列和堆是抽象数据类型。它们只是想法,即"黑盒子"具有已定义的行为。要实现它们,您必须选择合适的具体数据类型。 特别是,堆栈和队列可以通过数组或链表实现。 堆可以由数组或二叉树实现
答案 1 :(得分:0)
抽象数据类型是基于状态和可用操作的语句的mathematical model of a type。
我认为你可能会想到一个抽象的类,这是一个没有完全实现的类,因此必须进行细化以构建一个具体的类。
.h
个文件指定类提供的接口。但是,在内联等方面,它并没有很好地适应抽象/具体的区别:你可以拥有一个完全实现具体类的.h
文件。