编译器设计中数据结构的规格和操作是什么?


指定数据结构的主要属性包括以下内容:

  • 组件数量 - 如果数据结构在整个生命周期中组件数量始终相同,则其大小固定;如果组件数量动态变化,则其大小可变。可变大小的数据结构类型通常定义从结构中插入和删除元素的操作。

数组和记录是固定大小数据结构类型的示例。栈、列表、集合、表和文件是可变大小数据类型的示例。可变大小的数据对象使用指针数据类型,使程序员能够显式地连接固定大小的数据对象。

  • 每个组件的类型 - 如果数据结构的所有元素类型相同,则它是同构的。如果其元素有多种类型,则它是异构的。数组、集合和文件通常是同构的,而记录和列表通常是异构的。

  • 用于选择组件的名称 - 数据结构类型需要一个选择结构来识别数据结构的单个元素。对于数组,单个组件的名称可以是整数下标或下标序列;对于表,名称可以是程序员定义的标识符;对于记录,名称通常是程序员定义的标识符。

  • 组件的最大数量 - 对于包括栈在内的可变大小数据结构,可以为包含多个组件的结构定义最大大小。

数据结构上的操作 - 数据结构类型的操作域和范围的规范可以以与基本数据类型非常类似的形式给出。一些新的操作类别具有特殊的意义:

  • 组件选择操作 - 数据结构的处理通常通过获取结构的每个组件来进行。两种类型的选择操作访问数据结构的组件,并使它们可供不同操作处理,例如随机选择,其中创建数据结构的任意组件,以及顺序选择,其中按预定顺序选择组件。

  • 整个数据结构操作 - 操作可以将整个数据结构作为参数,并创建新的数据结构作为结果。大多数语言都支持一组明确的此类整个数据结构操作。例如,两个数组的加法、一个数据到另一个数据的赋值或对集合的并集操作。

  • 组件的插入/删除 - 转换数据结构中多个组件的操作会对数据结构的存储表示和存储管理产生重大影响。

  • 数据结构的创建/销毁 - 创建和销毁数据结构的操作也会对数据结构的存储管理产生重大影响。

更新于:2021-10-23

804 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告