博客作业2---线性表
一、PTA实验作业
1.题目1:线性表元素的区间删除
2. 设计思路(伪代码或流程图)
定义i,len两个变量,令len=0
for i=0 to L->Last
如果Data[i]的值在(minD,maxD)之外
重构数组Date[len++]=Data[i]
L->Last=--len
返回L
3.代码截图
4.PTA提交列表说明。
- 函数结尾没有改变L的长度。
1.题目2: jmu-ds-链表倒数第m个数
2. 设计思路
定义结构体指针s=L,r=L->next
定义i=0,n=0两个变量
while(s->next) n++ s=s->next
如果m<=0或者m>n 返回-1
while(r)
如果m+i==n 返回r->data
r=r->next
i++
3.代码截图
4.PTA提交列表说明。
- 1.没有对m的值进行判断,解决方法m<=0或者m>n,则返回-1。
- 2.对i的值没有赋值正确,应该初始值为0。
1.题目3: 一元多项式求导
2. 设计思路
定义结构体指针l,s,r
s=L l=L1->next
while(1)
若果指数为0 结束循环
新链表系数为原链表系数与指数相乘
指数为原指数-1
3.代码截图
4.PTA提交列表说明。
- 1.对输入个数不确定,解决方法是对空格进行判断
- 2.输出0 0格式错误
二、截图本周题目集的PTA最后排名
-
1.顺序表PTA排名
-
2.链表PTA排名
-
3.我的总分:285
三、本周学习总结
1.谈谈你本周数据结构学习时间是如何安排,对自己安排满意么,若不满意,打算做什么改变?
- 刷刷题目,向同学请教学习。不满意,认真听老师讲,多看看书。
2.谈谈你对线性表的认识?
- 线性表是一种常用的数据结构。在实际应用中,线性表都是以栈、队列、字符串、数组等特殊线性表的形式来使用的。由于这些特殊线性表都具有各自的特性,因此,掌握这些特殊线性表的特性,对于数据运算的可靠性和提高操作效率都是至关重要的。
- 线性表是一个线性结构,它是一个含有n≥0个结点的有限序列,对于其中的结点,有且仅有一个开始结点没有前驱但有一个后继结点,有且仅有一个终端结点没有后继但有一个前驱结点,其它的结点都有且仅有一个前驱和一个后继结点。
3.代码Git提交记录截图
四、阅读代码
- 这个多项式的乘法的代码。其优点显而易见,简短并且可读性高,在数据不大的情况下十分适用,O(n的平方)的时间复杂度,比起用链表做简短乐非常非常多。