20172304 2018-2019-1 《程序设计与数据结构》课程总结
标题:学号 2018-2019-1《程序设计与数据结构》课程总结
第一周作业第一周主要学习了有关代码质量的内容以及关于算法的复杂度计算。
第二周作业第二周主要学习了栈的有关知识。
第三周作业第三周主要学习了队列的有关知识。
第四周作业第四周主要学习了列表的有关知识。
第五周作业第五周主要学习了有关排序和查找的知识。
第六周作业第六周主要学习了有关树的知识特别是二叉树的知识。
第七周作业第七周主要学习了有关二叉查找树的知识。
第八周作业第八周博客主要学习的是有关堆的知识。
第九周作业第九周博客主要学习的是有关图的知识。
THE TWO QUESTIONS ABOUT THE BLOG
-自认为写得最好一篇博客是?为什么?
自认为写的最好的一篇博客是第九周博客,因为在这篇博客中我对图的各个内容都作出了我能力范围之内的最好的解释。而且针对每个需要进行展示的内容,我都进行了手工绘图(当然还是借助了电脑上的工具,但是图都是自己画的。)
作业中阅读量最高的一篇博客是?谈谈经验
我作业中阅读量最高的一篇博客是第一周作业总结。我认为我的这篇博客之所以阅读量最高,是因为我对教材的知识的总结概括比较精炼,独到。
实验报告链接汇总
实验一
-实验1
链表练习,
通过键盘输入一些整数,建立一个链表
-实验2
链表练习
实现节点插入、删除、输出操作
-实验3
链表练习,
使用冒泡排序法或者选择排序法根据数值大小对链表进行排序
在排序的每一个轮次中, 打印元素的总数,和目前链表的所有元素。
-实验4
数组练习,要求实现下列功能:
通过键盘输入一些整数,建立一个数组
数组插入、删除、输出操作
-实验5
数组练习,要求实现下列功能:
使用冒泡排序法或者选择排序法根据数值大小对数组进行排序(2分);
如果你学号是单数, 选择选择排序, 否则选择冒泡排序。
在排序的每一个轮次中, 打印元素的总数,和目前数组的所有元素。
实验二
-实验1:实现二叉树
参考教材p212,完成链树LinkedBinaryTree的实现(getRight,contains,toString,preorder,postorder)
用JUnit或自己编写驱动类对自己实现的LinkedBinaryTree进行测试,提交测试代码运行截图,要全屏,包含自己的学号信息
课下把代码推送到代码托管平台
-实验2:中序先序序列构造二叉树
基于LinkedBinaryTree,实现基于(中序,先序)序列构造唯一一棵二㕚树的功能,比如给出中序HDIBEMJNAFCKGL和后序ABDHIEJMNCFGKL,构造出附图中的树,用JUnit或自己编写驱动类对自己实现的功能进行测试,提交测试代码运行截图,要全屏,包含自己的学号信息
-实验3:决策树
自己设计并实现一颗决策树,提交测试代码运行截图,要全屏,包含自己的学号信息,课下把代码推送到代码托管平台
-实验4:表达式树
输入中缀表达式,使用树将中缀表达式转换为后缀表达式,并输出后缀表达式和计算结果(如果没有用树,则为0分),提交测试代码运行截图,要全屏,包含自己的学号信息,课下把代码推送到代码托管平台
-实验5:二叉查找树
完成PP11.3,提交测试代码运行截图,要全屏,包含自己的学号信息,课下把代码推送到代码托管平台
-实验6 : 红黑树分析
参考本博客:点击进入对Java中的红黑树(TreeMap,HashMap)进行源码分析,并在实验报告中体现分析结果。.
实验三
查找与排序-1
定义一个Searching和Sorting类,并在类中实现linearSearch,SelectionSort方法,完成测试。
实验三-查找与排序-2
重构你的代码
把Sorting.java Searching.java放入 cn.edu.besti.cs1723,把测试代码放test包中重新编译.
实验三-查找与排序-3
参考http://www.cnblogs.com/maybe2030/p/4715035.html 在Searching中补充查找算法并测试.
实验三-查找与排序-4
补充实现课上讲过的排序方法:希尔排序,堆排序,二叉树排序等(至少3个)
测试实现的算法(正常,异常,边界)
实验三-查找与排序-5
编写Android程序对各种查找与排序算法进行测试
团队项目报告链接汇总
团队项目链接
- 第一周:
- 简要内容:
- 团队展示
- 团队选题介绍
- 采访学长经验
- 团队分工和占比
- 团队任务计划
- 需求说明书
- 简要内容:
- 第二周:
- 简要内容:
- 修改完善上周提交的需求规格说明书
- 团队的编码规范
- 团队项目的数据库设计及相应ER图
- 项目的后端架构设计
- 团队分工
- TODOList及燃尽图
- 本次分工及工作量比例
- 简要内容:
- 冲刺博客一
- 冲刺博客二
- 冲刺博客三
- 冲刺博客四
- 冲刺博客五
- 冲刺博客六
- 冲刺博客七
代码托管链接
statistic.sh的运行结果
根据idea的脚本显示本学期我的代码量是足够的了。
加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得
编程的智慧我看过了一遍,不过从头再次读起又会有不一样的感受,其实我们都知道,所谓编程就是利用已经建设好的编程语言语言的逻辑去实现我们想要的功能,具体来解释的话。编程其实跟写文章类似。就是用每个人都认识的字符去写出属于自己的文章。然而编程又与写文章不同,因为写文章你可以使用一些修辞手法比喻夸张,甚至有时为了所谓的文学效果,所写出的文章的逻辑用常理难以解释。这是编程所需要忌讳的。编程最能容忍错误的地方也就是命名和注释这两个地方了。其他地方甚至不能容忍一丁点的错误。其实每个编程的人呢都有过类似的经历,就是盯着一个项目很长时间,命名自己的逻辑和语法都感觉无可挑剔,但是idea却总是无情的给你显示出一个又一个红色字体,让你心烦,让你不安。所以我们在写代码时就要额外主义一些问题,那就是一些编程的智慧。能够用两行代码实现的功能就不要用10行代码去实现。还有需要封装的地方一定要使用大括号。我们平时也可以积累一些常用的算法的代码。储存起来,然后在需要使用的时候直接调用就可以了。
积极主动敲代码做到没?教材实践上有什么经验教训?
积极主动敲代码基本上是做到了。因为如果不通过自己的实践的话有时很难真正理解一段代码的作用的。教材实践时有时会发现教材上有时也会出现错误。不知是版本不匹配,或是作者疏忽了,亦或是译者的失误,反正给我们带来了很多疑惑,所以我认为尽信书不如无书。有时要对教材的不正确的内容提出提出质疑。不要迷信权威。
课堂项目实践
- 课堂实践链接(这里给出的是蓝墨云链接)
- 时间复杂度分析
- ArrayStack的实现和测试
- 链表插入
- 链表实践
- 第四章代码检查
- LinkedStack补全
- 凯撒密码
- 杨辉三角
- 栈队列测试
- 第六章代码检查
- 线性表时间
- ASL测试
- 哈希冲突处理实践
- 三种查找算法练习
- 希尔排序测试
- 树计算题
- 树的深度和叶子个数计算
- 中序和先序计算二叉树结构
- 层次遍历法实践
- 堆构造与排序
- 堆排序测试
- 十一链表练习
- 最小生成树
- Dijkstra(迪杰斯特拉)算法测试
- AOE练习
- 哈夫曼编码测试
课堂实践对提高应用能力有帮助吗?
有
课堂实践上自己有什么经验教训?
上课一定要认真听讲
课堂实践上对老师有什么教学建议?
老师做的很好了。
课程收获与不足
学习了线板学期的数据结构之后,我觉得自己对java的各个基础的数据结构的理解更加深刻了。而且运用起来也更加娴熟,同时我也见识到了自己所学的知识只是那漫漫代码中的沧海一粟,想要真正的不断提升自己,那么我还要不断地去学习借鉴他人的代码。不断地去时间,去尝试。去学习。
自己的收获
自己学会了很多有用的数据结构。
自己需要改进的地方
还是需要对自己严格要求
结对学习是不是真正贯彻了?写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议
结对学习严格贯彻了我并没有有提供什么帮助因为大家的自主性还是很强的。没有对老师的建议。
问卷调查
- 你平均每周投入到本课程有效学习时间有多少?
20~30个小时 - 每周的学习效率有提高吗?你是怎么衡量的?
一般。与其他同学进行比较。 - 蓝墨云班课的使用对你的学习有促进吗?有什么建议和意见吗?
有促进。没有建议。 - 你觉得这门课老师应该继续做哪一件事情?
继续教这门课。 - 你觉得这门课老师应该停止做哪一件事情?
熬夜。
博客中涉及的链接
- 码云项目链接
- 第一周作业
- 第二周作业
- 第三周作业
- 第四周作业
- 第五周作业
- 第六周作业
- 第七周作业
- 第八周作业
- 第九周作业
- 实验一
- 实验二
- 实验三
团队项目链接
第一周
需求说明书
第二周
- 冲刺博客一
- 冲刺博客二
- 冲刺博客三
- 冲刺博客四
- 冲刺博客五
- 冲刺博客六
冲刺博客七
时间复杂度分析
ArrayStack的实现和测试
- 链表插入
链表实践
第四章代码检查
LinkedStack补全
凯撒密码
杨辉三角
栈队列测试
第六章代码检查
线性表时间
ASL测试
哈希冲突处理实践
三种查找算法练习
希尔排序测试
树计算题
树的深度和叶子个数计算
中序和先序计算二叉树结构
层次遍历法实践
堆构造与排序
堆排序测试
十一链表练习
最小生成树
Dijkstra(迪杰斯特拉)算法测试
AOE练习
哈夫曼编码测试
转载于:https://www.cnblogs.com/15248252144dzx/p/10154884.html
20172304 2018-2019-1 《程序设计与数据结构》课程总结相关推荐
- 20172303 2018-2019-1《程序设计与数据结构》课程总结
20172303 2018-2019-1<程序设计与数据结构>课程总结 课程:<程序设计与数据结构> 班级: 1723班 姓名: 范雯琪 学号:20172303 教师:王志强 ...
- 20172329 2018-2019《Java程序设计与数据结构》课程总结
作者:lalalouye(20172329王文彬) 2018-2019年大二Java程序设计与数据结构课程总目录:第一周 第二周 第三周 第四周 第五周 第六周 第七周 第八周 第九周 实验一 实验二 ...
- 20172304 《程序设计与数据结构》第四周学习总结
20172304 <程序设计与数据结构>第四周学习总结 教材学习内容总结 第六章主要介绍了列表,这个列表是一种概念上的笼统的定义. 列表包括链表和数组. 列表分为:有序列表,无序列表,索引 ...
- c语言程序设计课程总结600字,2019年春季学期《C语言程序设计II》课程总结
2019年春季学期<C语言程序设计II>课程总结 1.课程情况 2.课程总结 学生的课程总结: 本学期的目标 让课程形成模式,在较为清晰的教学内容的基础上,形成可持续性的教学管理方式,让同 ...
- 哈工大2018秋高级语言程序设计课程大作业
Github文件下载地址哈工大2018秋高级语言程序设计课程 <高级语言程序设计>实验大作业反思报告 实验大作业题目 智能趣味电子通讯录 类型 信息管理系统 学生姓名 郭茁宁 班 号 18 ...
- 20172304 《程序设计与数据结构》第九周学习总结
20172304 <程序设计与数据结构>第九周学习总结 教材学习内容总结 本章是第十五章,主要介绍了图的概念. 首先我来介绍一下图的基本结构. 从逻辑上讲,图是由边和结点组成的,在我的理解 ...
- 20162305 2016-2017-2《程序设计与数据结构》课程总结
20162305 2017-2018-2<程序设计与数据结构>课程总结 每周作业链接汇总 第一周作业: 简要内容: 什么是算法 算法的时间复杂度 什么是数据结构 二维码: 第二周作业 简要 ...
- 20172304 《程序设计与数据结构》第六周学习总结
20172304 <程序设计与数据结构>第六周学习总结 教材学习内容总结 本周主要学习的是树的内容,树由结点和边组成,位于树中较低层的结点是上一层结点的孩子.一个结点只有一个双亲,统一双亲 ...
- 20172304 2017-2018-2 《程序设计与数据结构》第六周学习总结
20172304 2017-2018-2 <程序设计与数据结构>第六周学习总结 教材学习内容总结 本周学习了数组. 首先是数组元素,数组具有优越性因为它可以声明一个能容纳多个可访问值的变量 ...
最新文章
- 技校毕业是什么学历_技校毕业是什么学历
- java wait方法_java wait方法
- python报数组越界_python数组越界
- 线程间通信: Handler , Looper, MessageQueue, Message (完结)
- 最终选型 Blazor.Server:又快又稳!
- MySQL结果集 数据查询(重点)
- 09年让你笑到肚疼的签名
- 决定论的科学家认为,自我是大脑的随附现象,自由意志是一种幻觉
- android深度探索第二章
- 免工具获取MIUI主题下载链接
- 电脑的声卡驱动无法识别,扬声器麦克风无法使用
- 网站建设多少钱(做一个网站需要多少钱)
- JAVA公益捐赠管理系统_公益组织捐赠系统的设计与实现
- MQTT网关如何接入物联网平台?
- 根据概率密度函数生成随机数的代码
- 陕西省西安市谷歌高清卫星地图下载
- GPS卫星坐标用计算机计算,GPS卫星位置的计算
- 武汉大学计算机学院 优秀夏令营,武汉大学计算机学院2014年优秀大学生暑期夏令营通知.docx...
- 计算机专业的学生简历范文,计算机专业学生的简历范文精选
- 安卓开发中布局加载器(LayoutInflater)的使用