data-structures - adt和数据结构之间的区别

标签 data-structures abstract-data-type

堆栈是抽象数据类型的示例,堆栈是数据结构的示例,但是抽象数据类型与数据结构有何不同?

最佳答案

您可以将ADT(抽象数据类型)视为操作的集合(即addremoveinsert),这些操作定义了ADT在数据元素集合上的行为。在ADT级别上,数据的存储是隐藏的;因此,“抽象数据类型”中的“摘要”是这里的一个大主意是隐藏数据的呈现方式,以使其他人更易于访问,例如MapQue

另一方面,数据结构实际上实现了定义ADT行为的那些操作。示例包括ArrayList

实际上,您通常会在两个文件中看到一个ADT:1)一个接口文件,它指定所需的操作; 2)一个实现文件,它使用特定的数据结构来实现那些操作。

这就是为什么您会在界面文件的开头看到public interface SomeList<T>而在实现文件的开头看到类似public class SimpleLink<T> implements SomeList<T>的原因-implements是实现所有SomeList<T>方法的“诺言”。

关于data-structures - adt和数据结构之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53920516/

相关文章:

c++ - Map C++ 的哈希函数

java - 我的教授所说的 "Implementing a static Abstract Data Type"是什么意思?

types - 返回 SML 中的自由(未绑定(bind))变量列表

c - 在 C 中实现字典的快速方法

c# - 所有线程完成执行后,如何显示消息框?

python - 实现一个带约束的 python 列表

dictionary - 定义一个空的 Dict,其中值是抽象类型的子类型

java - 抽象数据类型(ADT)和数据结构有什么区别?

java - 为自定义类实现 hashcode 和 equals

go - "value semantics’ "和 "pointer semantics"在 Go 中是什么意思?