考研网 发表于 2018-12-12 16:38:56

20189研数据结构C语言版详解答案(2)

《数据结构(C语言版)》复习重点在二、三、六、七、九、十章,考试内容两大类:概念,算法,自从计算机专业课统考以后,专业课考试题型分为2类,一类选择题,一类综合应用题。本次新东方在线整理了数据结构C语言版答案详解,各位考生可以对照着题目与答案详解,把计算机专业课的数据结构复习一遍。
      试仿照三元组的抽象数据类型分别写出抽象数据类型复数和有理数的定义(有理数是其分子、分母均为自然数且分母不为零的分数)。
    解:
    ADT Complex{
    数据对象:D={r,i|r,i为实数}
    数据关系:R={}
    基本操作:
    InitComplex(&C,re,im)
    操作结果:构造一个复数C,其实部和虚部分别为re和im
    DestroyCmoplex(&C)
    操作结果:销毁复数C
    Get(C,k,&e)
    操作结果:用e返回复数C的第k元的值
    Put(&C,k,e)
    操作结果:改变复数C的第k元的值为e
    IsAscending(C)
    操作结果:如果复数C的两个元素按升序排列,则返回1,否则返回0
    IsDescending(C)
    操作结果:如果复数C的两个元素按降序排列,则返回1,否则返回0
    Max(C,&e)
    操作结果:用e返回复数C的两个元素中值较大的一个
    Min(C,&e)
    操作结果:用e返回复数C的两个元素中值较小的一个
    }ADT Complex
    ADT RationalNumber{
    数据对象:D={s,m|s,m为自然数,且m不为0}
    数据关系:R={}
    基本操作:
    InitRationalNumber(&R,s,m)
    操作结果:构造一个有理数R,其分子和分母分别为s和m
    DestroyRationalNumber(&R)
    操作结果:销毁有理数R
    Get(R,k,&e)
    操作结果:用e返回有理数R的第k元的值
    Put(&R,k,e)
    操作结果:改变有理数R的第k元的值为e
    IsAscending(R)
    操作结果:若有理数R的两个元素按升序排列,则返回1,否则返回0
    IsDescending(R)
    操作结果:若有理数R的两个元素按降序排列,则返回1,否则返回0
    Max(R,&e)
    操作结果:用e返回有理数R的两个元素中值较大的一个
    Min(R,&e)
    操作结果:用e返回有理数R的两个元素中值较小的一个
    }ADT RationalNumber
页: [1]
查看完整版本: 20189研数据结构C语言版详解答案(2)