博客作业01-抽象数据类型.

1.作业内容

ADT Rational{
    数据对象:{T={T[0],T[1],T[2],T[3]  | T[0],T[1],T[2],T[3] 属于ElemType类型}
    数据关系:R1={<T[0],T[1]>,<T[1],T[2]>,<T[2],T[3]>}
    基本操作:
             InitRational(&T,  v1,  v2,  v3,  v4); 
             Calculate( T);
             Search( T, i);
             Modify(&T,  i,  e,  num);
             Add(t);
             Subtract(T);
             Multiplication(T);
             Devide(T);
             DestroyRational( &T); 
}ADT Rational

2.数据结构、函数说明

3.代码实现说明

申请空间


做法:用new申请,并将分子分母存入T中

加法运算


做法:利用分母通分实现求和

减法运算


做法:利用分母通分实现求差

乘法运算


做法:分子=T1分子T2分子,分母=T1分母T2分母

除法运算


做法:除以一个数等于乘以这个数的倒数

化简结果


做法:利用辗转相除法,找到最大公约数,再将化简前的分子分母同除以最大公约数,从而得到结果

销毁


做法:用delete函数释放(销毁)T

修改


做法:判断修改对象,确认修改

4.结果展示

输入数据并检验

相加相减

相乘相除+数据检验

返回值+数据检验

修改


化简

销毁

主菜单的数据检验+退出功能

除法遇到0时


5.总结

  • 数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。学了时间复杂度和空间复杂度之后,我觉得这门课真的很有必要,毕竟哪位用户都不想在应用上等待“太长”的时间,当然运行地越快越好,内存越耐用越好。
  • 做这个程序的时候,上学期做过的一些东西都忘记了,主要是头文件和主函数这块,还要回去看看上学期的代码,果然还是要在开学写一写程序,不然都忘记一些了。
  • 刚做的时候问题有点大,函数类型借鉴老师的Status,可是做完不能运行,又改回int,但是还是不知道Status是干嘛用的,想了好久,不知道到底是什么类型的,什么该写在哪里,捯饬了好久,那时候就是觉得万事开头难!开头难!最后去百度了一下Status才知道就是代替了int而已,然后Elemtype,Rational也就知道了,才开始有了头绪。

posted on 2018-03-08 21:54  黑白熊熊  阅读(173)  评论(1编辑  收藏  举报

导航