博客做业2---线性表

1、PTA实验做业(5分)

题目1:线性表元素的区间删除

2. 设计思路

定义 i控制循环,count计数在区间内的数字个数
     for i=0 to Last {
         若是数字在minD到maxD内count++
         不然 第i-count个数换成第i个数
          
    Last修改成Last-count
    返回L

3.代码截图

4.PTA提交列表说明。

  • 循环次数错误,没有遍历到最后一个L->Last

1.题目2:6-3 jmu-ds-链表倒数第m个数

2. 设计思路

定义一个p指针指向L头节点
    遍历L 计数个数n
    若是m>0
        for i=1 to n-m+1
           i增1
           L左移
           x=L的数据data 直到指到第n-m+1个数字为止(倒数第m个)
    若是m<=0 x=-1
    返回x

3.代码截图

4.PTA提交列表说明。

  • 定义出错 LinkList *p=L;看了同窗的都是p=L,改过来就行了。

1.题目3:7-1 两个有序链表序列的合并

2.设计思路

主函数:
     输入a数组 b数组
     输出合并后的s3数组
     
尾插法创建链表s1存a s2存b
合并函数:
     a指向s1的第一个数字 b指向s2的第一个数字
     为s3申请新的结点
     r指向s3的头节点
     while遍历a和b(其中一个结束即中止)
          若a指向的数字大于b指向的数字
              r指向b的指向的结点
              b右移
           若a指向的数字小于b指向的数字
              r指向a指向的结点
              a右移 
           若a等于b指向的数字
               r指向a的结点
               a b同时右移
     若a没遍历完 则接下来a后的全部结点接上r
     若b没遍历完 则接下来b后的全部结点接上r
      r->next=NULL
      输出s3

3.代码截图

4.PTA提交列表说明。

2、截图本周题目集的PTA最后排名

1.顺序表PTA排名

2.链表PTA排名

3.个人总分:127

3、本周学习总结

1.谈谈你本周数据结构学习时间是如何安排,对本身安排满意么,若不满意,打算作什么改变?

很是不满意的学习,感受本身在逃避学习,刚刚开始作题,作不出来就不想作了,本身在逃避这些事,感受是很是很差的状态,以为心态应该调整过来,不去解决永远都不会,解决得少解决得多都会有进步,聚沙成塔。git

2.谈谈你对线性表的认识?

单链表 双链表 循环链表,双链表感受比较灵活,有前驱和后置结点,循环链表的话知道尾结点就能够知道头节点(单链表),而后还有以为有两种建链表的方法很方便,头插尾插,能够根据须要选择。单链表和双链表,循环链表的选择也要根据须要来,对于不一样问题用不一样类型的链表解决时间复杂度和空间复杂度都有所不一样,若是选择的合适,能够大大节省空间也提升速度。数组

3.代码Git提交记录截图

相关文章
相关标签/搜索