博客作业2---线性表

一、PTA实验作业

1. 线性表元素的区间删除

2. 设计思路

List Delete( List L, ElementType minD, ElementType maxD )
{
定义变量 i=0,j=0;
创建链表 L1;
L1=(List)malloc(sizeof(struct LNode));
L1->Last等于-1;
for(i=0;i<=L->Last;i++)
如果L->Data[i]小于等于minD或者L->Data[i]等于等于maxD
L1->Data[j]等于L->Data[i];
j自增;
L1->Last自增;
end
end
return L1;
}

3.代码截图

博客作业2---线性表_第1张图片

4.PTA提交列表说明。

1233817-20180323192852846-2063331814.png

1.jmu-ds-链表倒数第m个数

2. 设计思路

int Find(LinkList L, int m )
{
定义变量 i=1;
创建结构体变量 p1=L->next,p2=L->next;
while(p1!=NULL&&i<=m)
p1指向下一个结点
i自增;
end
如果m大于等于i或者m小于1
return -1;
否则
while(p1!=NULL)
p1指向下一个结点
p2指向下一个结点
end
end
return p2->data;
}

3.代码截图

博客作业2---线性表_第2张图片

4.PTA提交列表说明。

1233817-20180323194025237-126230104.png

  • 中间段错误
    博客作业2---线性表_第3张图片
    m小于为0或者负数的情况没有考虑

1.两个有序链表序列的合并

2. 设计思路

定义标准函数
typedef int ElemType;
typedef struct LNode //定义单链表结点类型
{
ElemType data;
struct LNode next;
} LinkList;
void DispList(LinkList
L); //输出链表元素,每个结点元素值以空格符间隔。
void CreateListR(LinkList &L); //创建链表
void DestroyList(LinkList
&L);//销毁链表
void Union(LinkList ha,LinkList hb,LinkList &hc) ; //求两有序集合的并
main 函数
创建结构体指针
ha,hb,hc;
创建链表ha,hb
Union(ha,hb,hc);
输出hc
销毁链表
return 0;
end
创建链表,销毁链表,输出链表元素,每个结点元素值以空格符间隔。(省)
void Union(LinkList ha,LinkList hb,LinkList &hc)//求两有序集合的并
{
定义结构体指针
pa=ha->next,pb=hb->next,r,*s;
hc=new LinkList;
r=hc;
如果pa!=NULL与pb!=NULL)
if(pa->datadata){
s=new LinkList; //以下操作为尾插法(多次用到)
s->data等于pa->data;
r->next等于s; r等于s;
pa等于pa->next;
end
否则pa->data等于pb->data)
尾插法
end
否则
尾插法
end
end
如果pa不为空集
尾插法
end
如果pb不为空集
尾插法
end
r->next=NULL;
end

3.代码截图

博客作业2---线性表_第4张图片
博客作业2---线性表_第5张图片
博客作业2---线性表_第6张图片
博客作业2---线性表_第7张图片
博客作业2---线性表_第8张图片

4.PTA提交列表说明。

博客作业2---线性表_第9张图片

  • 大规模输入时运行超时
    博客作业2---线性表_第10张图片
    多此一举增添了递增的函数。

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

1.顺序表PTA排名

1233817-20180325220201832-709355554.png

2.链表PTA排名

1233817-20180325220230073-193368152.png

3.我的总分:

245

三、本周学习总结

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

  • 这周数据结构学习时间我一般在晚上9:40-11:00花时间写pta,我觉的对这个安排挺满意的,改变的话应该
    抽空花时间看一下数据结构的书。

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

  • 线性表是一种常用的数据结构。在实际应用中,线性表都是以栈、队列、字符串、数组等特殊线性表的形式来使用的
  • 线性表是一个线性结构,它是一个含有n≥0个结点的有限序列,对于其中的结点,
    有且仅有一个开始结点没有前驱但有一个后继结点,有且仅有一个终端结点没有后继但有一个前驱结点,其它的结点都有且仅有一个前驱和一个后继结点

    3.代码Git提交记录截图

    1233817-20180325215822438-374977088.png

四、阅读代码

7.27-2 一元多项式的乘法与加法运算
博客作业2---线性表_第11张图片
博客作业2---线性表_第12张图片

  • 这段网络上代码写了50行,用数组做相当精简。

转载于:https://www.cnblogs.com/guobaoqing/p/8633200.html

你可能感兴趣的:(博客作业2---线性表)