码迷,mamicode.com
首页 > 其他好文 > 详细

博客作业2---线性表

时间:2018-03-26 00:41:12      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:排名   down   集合   作用   问题   网址   保存   赋值   inf   

一、PTA实验作业

1.题目1:

6-2 线性表元素的区间删除

2. 设计思路

            定义整型变量i,j,k,count
            定义一个数组a[MAXSIZE]
            for i=0 to i小于等于L->Last
                如果L->data[i]不在minD和maxD这个区间内的元素,则保存到数组中,count++
             i++
            end for
            for k=0 to k小于count
                 将数组中的数值赋值到线性表
            end for
            记下线性表中最后一个元素的位置

3.代码截图

技术分享图片

4.PTA提交列表说明。

技术分享图片
前面几次写代码的时候,没用数组,自己的思路也有问题,提交测试点一直是段错误,后来实在不会,就用数组来辅助

1.题目2:

集合的基本运算(单链表)

2. 设计思路

        并集:
        定义指针p指向带头节点的单链表ha的第一个元素,定义指针q指向带头节点的单链表hb的第一个元素,定义指针r,s用尾插法构造新的链表
        为新链表hc申请空间  
        while(p并且q都不为空)
                将p、q进行比较,按递增的顺序将它们合并到新链表中
        while(p不为空)
            将剩下的元素一个一个接入到新链表中
        while(q不为空)
            将剩下的元素一个一个接入到新链表中
 

        交集
        定义指针p指向带头节点的单链表ha的第一个元素,定义指针q指向带头节点的单链表hb的第一个元素,定义指针r,s用尾插法构造新的链表
        为新链表hc申请空间  
        while(p不为空)
               q指向hb的第一个元素
                while q的元素小于p的元素并且q不为空
                      q移到下一个元素
                 if q不为空并且p、q的元素相等
                            将这个元素插入新链表中
            p移动到下一个元素

        差集
        定义指针p指向带头节点的单链表ha的第一个元素,定义指针q指向带头节点的单链表hb的第一个元素,定义指针r,s用尾插法构造新的链表
        为新链表hc申请空间      
        while(p不为空)
               q指向hb的第一个元素
                while q的元素小于p的元素并且q不为空
                      q移到下一个元素
                 if q为空并且p、q的元素不相等
                            将p这个元素插入新链表中
            p移动到下一个元素

          

3.代码截图

技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片

4.PTA提交列表说明。

技术分享图片
销毁函数写错了,非法越界,而自己一直以为是差集跟交集的函数错了,找了好久都找不出错误,最后同学帮忙找出了错误。
修改完之后没注意到前一次代码的括号没删完,导致了编译错误

1.题目3:

7-1 两个有序链表序列的合并

2. 设计思路

        建立链表
        为L申请空间,定义指针r、s用尾插法构造新的链表
        定义一个ElemType类型的变量x
        输入x的值,
        while(x>0)
            用尾插法将这个元素插入到链表中
            继续读入x的值
        当不满足条件时,结束while

        合并
        定义指针p指向带头节点的单链表ha的第一个元素,定义指针q指向带头节点的单链表hb的第一个元素,定义指针r,s用尾插法构造新的链表
        为新链表hc申请空间  
        while(p并且q都不为空)
                将p、q进行比较,按递增的顺序将它们合并到新链表中
        while(p不为空)
            将剩下的元素一个一个接入到新链表中
        while(q不为空)
            将剩下的元素一个一个接入到新链表中
            

3.代码截图

技术分享图片
技术分享图片
技术分享图片
技术分享图片

4.PTA提交列表说明。

技术分享图片
第一次提交忘了改编译器
第二、三次提交,链表空时,段错误,又是销毁的出错,非法越界了,跟前一题一样
后面提交的,输入时的判断条件错误,写成x!=-1,有并列数字时错误,并列数字也要全部插进去

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

1.顺序表PTA排名

技术分享图片

2.链表PTA排名

技术分享图片

技术分享图片

3.我的总分:

245

三、本周学习总结

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

有空的时候就写写pta,预习的时候主要看视频,书比较少翻,只有在自己打代码不懂的时候,才会翻书看,
不太满意,觉得自己还是要平时的时候多看看书上的代码,加深自己的印象,在写代码的时候做到尽量少翻书

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

线性表的存储结构有两种:顺序和链表
顺序表元素的地址是连续的,
链表节点的地址不是连续的,是靠指针连起来的
顺序表在查找数据的时候会比较方便,而链表在增加和删除的时候,步骤会比顺序表的简单

线性表除第一个元素外,其他每一个元素有且仅有一个直接前驱,除最后一个元素外,其他每一个元素有且仅有一个直接后继

3.代码Git提交记录截图

技术分享图片

四、阅读代码

技术分享图片
(此代码的网址)
https://gitee.com/adressad/codes/xlqmk8dc1750s2nh3j4vp67
该段代码的主要作用是判断我们输入的密码是否足够安全,用c1、c2、c3、c4分别代表4个不同种类的密码元素,当元素种类小于3的时候,就说明密码的安全系数不够高,当元素种类大于等于3时,说明密码的安全系数够了

博客作业2---线性表

标签:排名   down   集合   作用   问题   网址   保存   赋值   inf   

原文地址:https://www.cnblogs.com/a2017/p/8642218.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!