1.本周学习总结

1.1思维导图

1.2.谈谈你对线性表的认识及学习体会

这阶段学习学的是线性表,学习线性表的两种存储顺序-----链表和顺序表,体会了两者存储结构之间的区别,通过对顺序表,单链表,双链表,循环链表,有序表的特点的了解,和学习它们的算法设计方法,综合运用线性表解决一些问题,在查资料时,也领悟一点单双链表的在一些方面使用的优劣,对线性表的知识更加加深一点。

2.PTA实验作业

2.1.题目1:6-2 jmu-ds-有序表插入数据

2.1.1设计思路(伪代码)

void CreateSqList(SqList &L, int n)
分配存放线性表L的空间;
定义k表示L中的元素个数,初始值为0;
while(i<n//扫描数组元素){
将a[i]存放入L中;
k++;
i++;
}
设置L的长度k;
void InsertSq(SqList &L, int x)
定义i=1,使插入的数放在第一个位置;
定义j来使线性表向后退一位
定义k和t来进行两层循环排序
定义y当中间值对调需要对调的两个数值
if i的值错误,返回false;
for j=L->length to i
将线性表往后退一格
将x存入第一个位置
Length++;
for k=0 to L->length
{
for t=0 to k
if(L->data[k]=L->data[t])
用y为中间值将两个对调
end for
}
end for;
void DispSqList(SqList L)
int i来遍历线性表
if L->length=0
cout <<"error"
else
for i=0 to L->length-1
cout<< L->data[i];
if i!=L->length-1
输出空格

2.1.2代码截图



2.1.3本题PTA提交列表说明

  • Q1:一开始还不熟悉线性表,编译错误
  • A1:后来看书看题,慢慢钻研
  • Q2:部分正确
  • A2:因为一开始空格输出没有弄好,导致后面一直出现格式错误
  • Q3:关于算法
  • A3:一开始有用过遍历比较哪个位置可以插入,后来出现一些错误,直接改把数插在第一个,然后冒泡排序。

2.1.题目1:6-5 jmu-ds-头插法建链表

2.2.1设计思路(伪代码)

void CreateListF(LinkList &L,int n)
创建结点s;
L=new Lnode
创建头结点,其next域为0
for int i=0 to n
遍历将a[i]的值存入链表
s->next=L->next
L->next=s
将s插入之前首节点的前面,头结点之后
void DispList(LinkList L)
定义p指向首结点
while(p!=NULL)
输出p结点的data域
p指向下个结点
并且if(p->next!=0)
cout<<" "

2.2.2代码截图

2.2.3本题PTA提交列表说明

  • Q1:段错误
  • A1:链表傻傻指向搞不清楚,导致乱指,然后各种错误
  • Q2:格式错误
  • A2:同上

2.3.题目3:6-7 jmu-ds-单链表逆置

2.3.1设计思路(伪代码)

void ReverseList(List &L)
创建p结点和q结点
p指向首节点
其next域制空
while (p)
将链表同时向后退一位
使用头插法使链表逆序

2.3.2代码截图

2.3.3本题PTA提交列表说明

  • Q1:编译错误
  • A1:原本打在建一个链表,然后逆序存放,结果没弄好
  • Q2:头插法之外
  • A2:头插法还是同学帮忙提出思路,助教说的直接改数值也ok,黑猫白猫,抓鼠就是好猫。

3、阅读代码

3.1 题目

3.2 解题思路

3.3 代码截图

3.4 学习体会

DS博客作业02--线性表的更多相关文章

  1. DS博客作业02—线性表

    1.思维导图及学习体会 1.1第一章绪论知识点思维导图 1.2.谈谈你对线性表的认识及学习体会. 线性表最重要的就是对指针的操作,插入删除都是看指针的指向进行操作以达到改变节点,以达到目的的.对于上学 ...

  2. DS博客作业01--线性表

    1.本周学习总结(0--2分) 1.1思维导图 1.2.谈谈你对线性表的认识及学习体会. 1.线性表的内容上了三星期的课,相对来说内容比较丰富,尤其是链表方面,包含单链表,双链表和循环链表.作为第一部 ...

  3. DS博客作业05--查找

    这个作业属于哪个班级 数据结构--网络2011/2012 这个作业的地址 DS博客作业05--查找 这个作业的目标 学习查找的相关结构 姓名 黄静 目录 0.PTA得分截图 1.本周学习总结 1.1 ...

  4. DS博客作业--07查找

    目录 DS博客作业--07查找 1.本周学习总结(0--2分) 1.思维导图 2.谈谈你对查找运算的认识及学习体会. 2.PTA实验作业(6分) 2.1.题目1:6-1 二叉搜索树的操作集 (30 分 ...

  5. DS博客作业04--图

    这个作业属于哪个班级 数据结构--网络2011/2012 这个作业的地址 DS博客作业04--图 这个作业的目标 学习图结构设计及相关算法 姓名 黄静 目录 0.PTA得分截图 1.本周学习总结 1. ...

  6. DS博客作业03--树

    这个作业属于哪个班级 数据结构--网络2011/2012 这个作业的地址 DS博客作业03--树 这个作业的目标 学习树结构设计及运算操作 姓名 黄静 目录 0. PTA得分截图 1. 本周学习总结 ...

  7. DS博客作业——树

    DS博客作业--树 1.本周学习总结 1.思维导图 2.谈谈你对树结构的认识及学习体会. 在树这一章节,我们学习的是二叉树的算法. 树的构建:一种是直接给树的顺序存储结构的字符串,一种是通过先序遍历和 ...

  8. DS博客作业08--课程总结

    DS博客作业08--课程总结 1.当初你是如何做出选择计算机专业的决定的? 1.1 经过一年学习,你的看法改变了么,为什么? 1.2 你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗? 为什么? 1. ...

  9. c语言1博客作业02

    c语言1博客作业02 这个作业属于哪个课程 C语言程序设计 这个作业的要求在哪 [作业要求](https://edu.cnblogs.com/campus/zswxy/SE2019-2/homewor ...

随机推荐

  1. cocos creator主程入门教程(五)—— 日志系统

    五邑隐侠,本名关健昌,10年游戏生涯,现隐居五邑.本系列文章以TypeScript为介绍语言. 这一篇介绍日志系统的设计.一般我们开发一个demo,只会简单的用cocos提供的cc.log打印下日志, ...

  2. DSAPI QQ用户相关

    获取指定QQ号头像 Label1.Image=DSAPI.QQ用户相关.下载QQ头像("20353841") 获取指定QQ群头像 Label1.Image = DSAPI.QQ用户 ...

  3. PHP遍历文件夹下所有文件

    不论是面试还是正常工作需要都会用到遍历文件夹下的所有文件,今天就记录一下笔记.废话不多说直接上代码: <?php /** * 遍历当前文件夹展示所有的文件和目录 */ function dirL ...

  4. wordpress的excerpt()函数

    问题:在wordpres中的single页面,本身引用的<?php the_excerpt(); ?>,但是在页面上显示的却是文章的内容 原因:the_excerpt(); 在excerp ...

  5. Microsoft SQL Server 2016 RC3 安装

    首先下载SQL Server 2016 RC3 安装iso 下载链接 ed2k://|file|cn_sql_server_2016_rc_3_x64_dvd_8566578.iso|24648232 ...

  6. “等一下,我碰!”——常见的2D碰撞检测

    转自:https://aotu.io/notes/2017/02/16/2d-collision-detection/ 在 2D 环境下,常见的碰撞检测方法如下: 外接图形判别法 轴对称包围盒(Axi ...

  7. MyDAL - 组件适用范围说明

    索引: 目录索引 一.组件特性简介: 1.MSIL 底层代码采用 System.Reflection.Emit.Lightweight 类库使用 IL 的方式处理 Model 组装,性能刚刚的~ 2. ...

  8. 如何知道一个EXE使用什么开发语言开发的

    一般是看EXE调用哪些DLL,这可以使用VC++中的工具Dependency Walker,它可以列出静态链接的所有DLL. 如果EXE中的DLL包括MSVBVM60.DLL,则是使用VB 6.0开发 ...

  9. linux下oracle启动关闭

    1.以oracle身份登录数据库,命令:su – oracle 2.执行以下命令查看数据库监听器的状况: lsnrctl status 3.执行以下命令停止数据库监听器运行: lsnrctl stop ...

  10. c#核心基础 - 浅谈 c# 中的特性 Attribute)

    特性(Attribute)是用于在运行时传递程序中各种元素(比如类.方法.结构.枚举.组件等)的行为信息的声明性标签.可以通过使用特性向程序添加声明性信息.一个声明性标签是通过放置在它所应用的元素前面 ...