关于数据结构的疑惑

t181935471 2008-08-20 08:47:49
ADT Triplet {
数据对象: D = {e1 , e2 , e3 | e1 , e2 , e3 ElemSet}
数据关系: R1 = { , }
基本操作:
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已存在 .
操作结果:改变 T 的第 i 个元的值为e .
IsAscending( T )
初始条件:三元组T已存在 .
操作结果:若T的3个元素按升序排列,则返回1 ,
否则返回0.
IsDecending( T )
初始条件:三元组T已存在 .
操作结果:若T的3个元素按降序排列,则返回1 ,
否则返回0.
Max(T, &e )
初始条件:三元组T已存在 .
操作结果:用 e 返回 T 的3 个元素的最大值.
Min(T, &e )
初始条件:三元组T已存在 .
操作结果:用 e 返回 T 的3 个元素的最小值.
} ADT Triplet



Get ( T, i , &e )
初始条件:三元组T已存在 , 1≤i≤3 .
操作结果:用 e 返回 T 的第 i 个元的值.
是怎么判断用e返回T的第i个元的值呢?
Put ( &T, i , e )
初始条件:三元组T已存在 .
操作结果:改变 T 的第 i 个元的值为e .
是怎么判断改变T的第i个元的值为e呢?
麻烦大家指点下,小弟感激不尽
...全文
48 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
AthrunArthur 2008-08-23
  • 打赏
  • 举报
回复
楼主误解了吧,这只是一个很抽象的方法而已,这个描述只是说明这样一种概念,对一个数据结构的操作,应该包括得到数据结构中指定元素的值,以及给数据结构中指定元素重新赋值两种操作。
至于这两种操作如何实现,是和具体的数据结构相关的,比如一维数组这个结构,这个操作就很显然,而且一般的结构体,当然不能用序号来标识每个元素,而是用变量名来标识。
所以上面的描述是很抽象的,不涉及具体的实现方法。

70,037

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧