一、PTA实验作业
1.题目2:6-2 线性表元素的区间删除
2. 设计思路(伪代码或流程图)
设置空顺序表指针k
依次遍历顺序表L的节点
IF 该元素的域值data不满足区间
将该元素插入到空顺序表k中
L=k构成新的顺序表
3.代码截图
4.PTA提交列表说明。
没有返回删除操作后的新表
1.题目2:6-3 jmu-ds-链表倒数第m个数
2. 设计思路(伪代码或流程图)
定义指针p指向链表L->next,q指向p
定义变量 i=0 对已遍历的节点数进行计数
找到第m个并让q指向其
while (指针q不为空 && i<m-1)
q=q->next
i++
end
若指针q为空或输入的m位置不合理
return -1
当q指向最后一个节点时p就指向倒数第m个节点
while(q->next 不为空)
p=p->next
q=q->next
end
返回指针p的data值
3.代码截图
4.PTA提交列表说明。
没有判断所有不合理的m值
1.题目3:7-1 两个有序链表序列的合并
2. 设计思路(伪代码或流程图)
设置指针p指向链表s1,指针q指向链表s2,指针k指向合并链表s3,指针s用以插入
while(p和q不为空)
IF(p->next域值>q->next域值)
将节点p->next赋给指针s并插入指针k,节点p下移
ELSE
将节点q->next赋给指针s并插入指针k,节点q下移
end
while(p->next)
将p->next节点赋给指针s并插入指针k,节点p下移
while(q->next)
将节点q->next赋给指针s并插入指针k,节点q下移
3.代码截图
4.PTA提交列表说明。
没有合并重复项
二、截图本周题目集的PTA最后排名
1.顺序表PTA排名
2.链表PTA排名
3.我的总分:215
三、本周学习总结
1.谈谈你本周数据结构学习时间是如何安排,对自己安排满意么,若不满意,打算做什么改变?
平时上课周六周末打代码,对自己安排不满意,以后平时多打代码
2.谈谈你对线性表的认识?
线性表是一种数据的逻辑结构,可以由数组和链表实现。
数组方式可以很快的找到第i个位置的元素并进行返回
链表方式在进行插入和删除操作时较为简便,且不需要知道数据的大小