一、PTA实验作业

题目1:7-11 单向链表3:编程实现:输入一个正整数 repeat (0<repeat<10),做 repeat 次下列运算:输入一个正整数 n(0<n<=9)和一组(n个)升序的整数,建立单向链表,再输入一个整数 x,把 x 插入到这组数据中,使该组数据仍然有序。

1. 本题PTA提交列表

2. 设计思路

主函数中输入repeat,做repeat次循环。每次循环都先输入该次循环数据的个数n,然后把这n个数据存储在链表中,最后输入待插入整数x,调用子函数fact(head,n,x)。子函数fact(head,n,x)分为三种情况:一,x<=链表的第一个数据,即头插法;二,x比链表里的所有数据都大,即尾插法;三,x位于链表中。分别有不同的处理方法。

3.本题调试过程碰到问题及PTA提交列表情况说明。

(1)格式错误:题目要求的输出格式是两个数据间有一个空格,行末不要空格。而我的输出是每个数据后面都带了一个空格。

4.代码截图。

题目二:7-12 单向链表4:定义单向链表:输入若干个正整数(输入-1为结束标志),要求按输入数据的逆序并输出。

 

1.本题PTA提交列表

2. 设计思路

在主函数中每记录一次数据就用一次头插法,这里的for循环以-1为标志结束,最后就变成倒序输入了,然后在输出时注意格式问题即可。

3.本题调试过程碰到问题及PTA提交列表情况说明。

(1)格式错误:与上题错误点一样。行末不能加空格。

4.代码截图。

题目三:7-13 单向链表5:定义单向链表struct Node并实现:输入若干个学生信息(包括学号、姓名和成绩),输入学号为0时输入结束,再输入一个成绩值,将成绩小于该值的学生信息删除,并将成绩大于等于该值的学生信息输出。

1.本题PTA提交列表

2. 设计思路

因为p->num=0是结束的标志,所以让动态分配后的初始化为-1。第一个for循环用于输入所有数据;第二个for循环用于删除分数比grade低的同学的信息,分为两部分:一,被删除点位于头结点,二,被删除点不是头结点;第三个for循环用于输出已删除后的链表。

3.本题调试过程碰到问题及PTA提交列表情况说明。

(1)答案错误:在第二个for循环中出现了逻辑上的错误,不能正确把握链表删除结点的操作。之后经过不断调试,还是正确了。

4.代码截图。

二、同学代码结对互评

1.互评同学:邢宇凡

2.我的代码、互评同学代码截图

邢宇凡同学的代码:

我的代码:

3.我和邢宇凡同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?

不同在于:邢宇凡同学的代码在删除特定结点的条件语句分成了两部分,一为被删除结点为头节点,二为被删除点不是头结点。最主要的代码差异在于删除特定结点这一部分,邢宇凡同学的语言更加标准,且运用了多个子函数,函数名也有实际意义。而我直接用判断语句输出结果,并没有按照题目要求删除结点(这样很不好!)。

各自优势:邢宇凡同学完全按照题目的要求编译代码,且代码语言简洁明了。而若是题目不要求删除特定节点,我的代码会更加简短。

我更喜欢邢宇凡同学的代码。

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

本周学习总结

1.我学会了简单的链表,可以解决部分链表题目,例如:逆序输出数字。

2.本周的内容,你还不会什么?

删除结点对我来说难度还是不小。例如7-10,7-13.

3.链表考试总结

(1).哪题做错了,怎么改?

  7-10:题目要求先将已有数据某一部分删除后输出另一部分,可是在删除时遇到了未知原因的阻力,导致答案错误,而直接输出题目要求的那部分是正确的,但总感觉没完成作业。

(2).考试结果满意么,怎么改进?

  考试结果感觉还可以,但是考试的过程并不理想,代码打出来很简单,但是总要经过一番不断的调试才能达到正确。加深自己对链表的理解,深入学习链表知识点。

软件161A 张慧敏的更多相关文章

  1. 四则运算 Python实现(杨浩政,张兆敏)

    四则运算 GitHub仓库:https://github.com/15crmor/Arithmetic 项目要求: 题目:实现一个自动生成小学四则运算题目的命令行程序说明: 说明: 自然数:0, 1, ...

  2. Mac中MacPorts安装和使用

    文章转载至http://www.zikercn.com/node/8 星期四, 06/07/2012 - 19:02 - 张慧敏 MacPorts简单介绍 MacPorts,以前叫做DarwinPor ...

  3. 团队作业8--测试与发布(Beta阶段)

    展示博客 一.项目成员: 张慧敏(组长)201421122032 苏晓薇(组员)201421031033 欧阳时康(组员)201421122050 团队仓库: https://git.coding.n ...

  4. python week08 并发编程之多进程--理论部分

    一 什么是进程 进程:正在进行的一个过程或者说一个任务.       而负责执行任务则是cpu. 举例(单核+多道,实现多个进程的并发执行): Jame在一个时间段内有很多任务要做:python学习任 ...

  5. 团队作业4(Alpha版本)

    项目名称:音乐播放器 项目成员: 张慧敏(201421122032) 苏晓薇(201421031033) 欧阳时康(201421122050) 会议记录:  主要讨论任务的分配和实现过程中已实现和未实 ...

  6. 2014 年最热门的国人开发开源软件 TOP 100 - 开源中国社区

    不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是 ...

  7. 2014 年最热门的国人开发开源软件TOP 100

    不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外认可.中国是开 ...

  8. 2014年国人开发的最热门的开源软件TOP 100

    不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是 ...

  9. 2014年最热门的国人开发开源软件TOP100

    2014年最热门的国人开发开源软件TOP100 不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多 ...

随机推荐

  1. TypeScript学习笔记之基础类型

    从今天开始学习typescript了,记录ts学习点滴,最后,使用ts结合nodejs开发后端应用,一起共勉吧: typescript最新版本2.6,所有演示代码均基于此版本 开始之前确定安装了如下n ...

  2. 浅析 SpringMVC 原理和配置.

    一.原理 Spring MVC基于模型-视图-控制器(Model-View-Controller,MVC)模式实现,它能够帮你构建像Spring框架那样灵活和松耦合的Web应用程序,将请求处理的逻辑和 ...

  3. sublime学习笔记

    学习课程地址:快乐的sublime编辑器_sublime编辑器使用 另可参考笔记地址:http://c.haoduoshipin.com/happysublime/ PS:博主的一些文章地址:http ...

  4. Docker入门书籍

    https://yuedu.baidu.com/ebook/d817967416fc700abb68fca1 精细讲解,入门使用极佳.

  5. lesson - 5 课程笔记 which/ type / whereis /locate /pwd / etc/passwd/ shadow/ group / gshadow /useradd /usermod /userdel /passwd / su sudo

    一.which 作用: which 命令用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录, which 命令会在环境变量$PATH 设置的目录里查找符合条件的文件.也 ...

  6. python 中一些关键字的区别

    一.raw_input 和input input和raw_input都可以读取控制台的输入,但是input和raw_input在处理数字时是有区别的 1.当输入为纯数字时 input返回的是数值类型, ...

  7. jmeter测试

    时间过得飞快,转眼间就到了公司半个月了,这是第三周上班,从上班到现在感觉自己什么都没有做,只是写了一些前台的验证,况且我的前台并不是很熟,js学了很久也快忘记了,看了看插件也不咋会用,但是自己也写了点 ...

  8. Spring异常处理@ExceptionHandler

    最近学习Spring时,认识到Spring异常处理的强大.之前处理工程异常,代码中最常见的就是try-catch-finally,有时一个try,多个catch,覆盖了核心业务逻辑: try{ ... ...

  9. vue2.0 配置sass

    一.配置sass依赖 npm install node-sass --save-dev npm install sass-loader --save-dev 二.打开build文件夹下的webpack ...

  10. px-rem自适应转换

    当前团队开发过程,存在2种度量单位(px.rem)各有说辞px:各个终端统一大小,简单明了,未尝不可!rem:大屏幕显示大字体,小屏幕显示小字体,渐进增强视觉感.业界各种写法都有,不逐一讨论.团队呼声 ...