什么是抽象数据结构?
我们所看到的数据结构都属于具体的数据结构。所谓具体的数据结构,是指它们的具体结构和对它们的操作方法完全都由我们自己来定义。例如,利用两个整型的数或者枚举类型的数来表示扑克牌的Card类,用两个浮点数来定义的复数类。
抽象数据结构,或者叫做ADT(abstract data type),虽是定义了一系列的操作(或者直接叫方法)和这些操作的作用(它们做什么),但我们却并不指定这些操作过程如何具体予以实施的办法(即不编写具体的代码)。这样出现的数据结构就是抽象数据结构。
例如,抽象的堆栈(stack)由3个操作定义:推入push,弹出pop(接受约束:每次弹出返回的是最新被推入且没有被弹出的数据,也就是后进先出),查看堆栈顶端数据peek。当分析使用堆栈算法的效率,所有这3个操作用时相同,无论堆栈中包含多少项数据;并且对每项数据栈使用了常量大小的存储。抽象数据类型(ADT)是纯粹理论实体,用于简化描述抽象算法,分类与评价数据结构,形式描述程序设计语言的类型系统。一个ADT可以用特定数据类型或数据结构实现,在许多程序设计语言中有许多种实现方式;或者用形式规范语言描述。ADT常实现为模块(module):模块的接口声明了对应于ADT操作的例程(procedure),有时用注释描述了约束。
Array
数组中每个槽位都可以存储任意类型的数据
数组是动态大小的,会随着数据添加而自动增长
在实践中要避免使用数组空位。如果确实需要空位,可以显式地使用undefined替代
使用Array.length属性可以很方便地向数组末尾添加元素
Array.isArray()用于确定一个值是否为数组
创建数组
上一篇:回调函数是什么意思?脉冲响应函数的时域描述是什么意思?
下一篇:最后一页