col = {<a1,a4>,<a2,a5>,<a3,a6>}
假设在 6 个数据元素{a1, a2, a3, a4, a5, a6} 之间存在如下的次序关系:
{<ai, ai+1>| i=1, 2, 3, 4, 5}
那么构成一维数组的定义。 可见,不同的“关系〞构成不同的“构造〞
数据构造是相互之间存在着某种逻辑关 系的数据元素的集合。
是如数:整据的数不“可5分〞割,字的最符小“单N位〞。等。 ----是不可分割的“原子〞
数据元素也可以由假设干款项构成。 例如: 描画一个学生的数据元素
其中每个款项称为一个“数据项〞
它是数据构造中讨论的最小单位
姓 名学 号班 号性别出生日期入学成果 年月日
原子项
称之为组合项
数据对象是性质一样的数据元素的集合, 是数据的一个子集。
例二 笼统数据类型三元组的定义:
ADT Triplet { 数据对象:D={e1,e2,e3|e1,e2,e3∈ElemSet } 数据关系:R1={<e1,e2> , <e2,e3>} 根本操作:
InitTriplet( &T, v1, v2, v3 ) 操作结果:构造三元组T,元素e1,e2和e3分别被赋以参数v1,v2和v3的值。
DestroyTriplet( &T ) 操作结果:三元组T被销毁。
Get( T, i, &e ) 初始条件:三元组T已存在,1≤i≤3。 操作结果:用e前往T的第i元的值。
Put( &T, i ,e ) 初始条件:三元组T已存在,1≤i≤3。 操作结果:改动T的第i元的值为e。
IsAscending( T ) 初始条件:三元组T已存在。 操作结果:假设T的三个元素按升序陈列