zoukankan      html  css  js  c++  java
  • 20162325 2016-2017-2《程序设计与数据结构》课程总结

    每周作业链接汇总

    1.20162325 2017-2018-2 《程序设计与数据结构》第1周学习总结

    教材第十二章:
    了解问题解决的一般方法
    了解软件工程基本过程
    掌握算法分析的方法
    理解渐进复杂度,增长函数

    2.第二周作业 - 建议写博客(未完成)

    开设团队项目博客
    下载Java Collection API源代码,下载工具
    掌握Java中泛型类,泛型方法的设计

    3.20162325 2017-2018-2 《程序设计与数据结构》第3周学习总结:

    教材第十三章:
    初步理解穷举和分治的算法设计思想
    掌握线性和二分查找算法
    掌握各种排序算法

    4.20162325 金立清 S2 W5 C14 - 20162325金立清 - 博客园

    教材第十四章:
    掌握Java Collections API的基本结构
    理解Collection的抽象设计
    掌握Collection实现的Java相关技术:继承/多态/泛型/接口
    掌握栈的应用
    掌握栈的实现(数组,链式)
    分析Java Stack API

    5.20162325 金立清 S2 W6 C15 - 20162325金立清 - 博客园

    教材第十五章:
    理解queue抽象数据类型
    会用queue解决问题
    掌握queue的实现(数组,链表)
    分析Java Collections API中queue相关的类

    队列课下作业 - 20162325金立清 - 博客园

    队列课下作业:
    1 补充课上没有完成的作业
    2 参考15.3节,用自己完成的队列(链队,循环数组队列)实现模拟票务柜台排队功能
    3 用JDB或IDEA单步跟踪排队情况,画出队列变化图,包含自己的学号信息
    4 把代码推送到代码托管平台
    5 把完成过程写一篇博客:重点是单步跟踪过程和遇到的问题及解决过程
    6 提交博客链接

    YanghuiTriangle - 20162325金立清 - 博客园

    队列加分项:
    1 用实现循环队列
    2 参考PPT用循环队列打印杨辉三角
    3 用JDB或IDEA单步跟踪排队情况,画出队列变化图,包含自己的学号信息
    4 把代码推送到代码托管平台
    5 把完成过程写一篇博客:重点是单步跟踪过程和遇到的问题及解决过程
    6 提交博客链接

    6.20162325 金立清 S2 W7 C16 - 20162325金立清 - 博客园

    教材第十六章:
    理解树抽象数据类型
    会用树解决问题
    掌握树的遍历方法
    掌握二叉树的实现(数组,链表)
    会用二叉树表示决策树
    分析Java Collections API中树相关的类

    7.20162325 金立清 S2 W8 C17 - 20162325金立清 - 博客园

    教材第十七章:
    理解二㕚查找树
    掌握二叉查找树的实现
    掌握二叉查找树的应用
    理解平衡二㕚树
    分析Java Collections API中树相关的类

    8.20162325 金立清 S2 W9 C18 - 20162325金立清 - 博客园

    教材第十八章:
    理解堆和优先队列
    理解堆和优先队列的关系
    掌握堆的实现
    掌握堆排序的实现
    分析Java Collections API中堆和相关的类

    9.20162325 金立清 S2 W10 C19 - 20162325金立清 - 博客园

    教材第十九章:
    理解图与有向图、无向图
    理解带权图
    会应用带权图
    理解图的广度优先遍历和深度优先遍历
    掌握最小生成树算法
    掌握图的实现

    快速阅读《构建之法》及问题汇总(不定时更新) - 20162325金立清 - 博客园

    10.20162325 金立清 S2 W11 C20 - 20162325金立清 - 博客园

    教材第十九章:
    掌握Hash 函数的实现
    理解哈希表中的冲突问题
    分析Java Collection API中的Hash 实现

    11.图-实验报告 - 20162325金立清 - 博客园

    用邻接矩阵实现无向图
    用十字链表实现无向图
    实现PP19.9

    12.实验五 团队项目 - 20162325金立清 - 博客园

    编译、运行、测试
    代码修改
    代码分析

    自认为写的最好的一篇博客是:

    20162325 金立清 S2 W9 C18 - 20162325金立清 - 博客园

    内容丰富,图文详实,花了不少时间,查阅了不少资料

    作业中阅读量最高的一篇博客是:

    线性结构-实验报告 - 20162325金立清 - 博客园

    理解线性表的概念
    掌握用数组和链表实现线性表的方法
    熟练应用线性表解决问题

    实验报告链接汇总

    1、线性结构-实验报告 - 20162325金立清 - 博客园

    理解线性表的概念
    掌握用数组和链表实现线性表的方法
    熟练应用线性表解决问题
    分析Java Collections API中ArrayList和LinkedList的实现

    2、树-实验报告 - 20162325金立清 - 博客园

    完成链树LinkedBinaryTree的实现
    实现基于(中序,先序)序列构造唯一一棵二㕚树的功能
    实现PP16.6决策树
    完成PP16.8实现树
    完成PP17.1二叉查找树
    红黑树分析

    3、查找与排序-实验报告 - 20162325金立清 - 博客园

    完成教材P302 Searching.Java ,P305 Sorting.java中方法的测试
    重构你的代码
    把Sorting.java Searching.java放入 cn.edu.besti.cs1623.(姓名首字母+四位学号) 包中
    把测试代码放test包中
    重新编译,运行代码,提交编译,运行的截图
    参考http://www.cnblogs.com/maybe2030/p/4715035.html 在Searching中补充查找算法并测试
    提交运行结果截图
    补充实现课上讲过的排序方法:希尔排序,堆排序,桶排序,二叉树排序等
    测试实现的算法(正常,异常,边界)
    提交运行结果截图
    编写Android程序对各种查找与排序算法进行测试(未完成)

    4、图-实验报告 - 20162325金立清 - 博客园

    用邻接矩阵实现无向图(边和顶点都要保存),实现在包含添加和删除结点的方法,添加和删除边的方法,size(),isEmpty(),广度优先迭代器,深度优先迭代器
    用十字链表实现无向图(边和顶点都要保存),实现在包含添加和删除结点的方法,添加和删除边的方法,size(),isEmpty(),广度优先迭代器,深度优先迭代器
    实现PP19.9——创建计算机网络路由系统,输入网络中点到点的线路,以及每条线路使用的费用,系统输出网络中各点之间最便宜的路径,指出不相通的位置

    5、实验五 团队项目 - 20162325金立清 - 博客园

    git clone 小组项目
    编译项目,提交编译成功截图(全屏,要有学号信息)
    提交运行过程中的截图(全屏,要有学号信息)

    在小组项目中,找一个合适的地方添加一个按钮,点击显示自己的学号
    提交运行截图(全屏,要有学号信息)
    在项目中找一个界面,自己复制一份命名为XXXbak,修改代码,替换原来的部分
    提交运行截图(全屏,要有学号信息)

    数据结构的应用情况及相关代码
    排序算法的应用情况及相关代码
    查找算法的应用情况及相关代码

    团队项目报告链接汇总

    2017-2018-1 我爱学Java 第八周 作业 - 我爱学Java - 博客园

    团队分工
    UML图
    工具选择

    2017-2018-1 我爱学Java 第六七周 作业 - 我爱学Java - 博客园

    完善版需求规格说明书
    制定团队编码规范
    数据库设计
    后端架构设计
    TODOList

    2017-2018-1 我爱学Java 第四五周 作业 - 我爱学Java - 博客园
    描述为撰写 需求规格说明书的 工作流程、组员分工、组员工作量比例;
    提供 《需求规格说明书》的码云链接 (markdown文件及pdf文件,tip:pdf可由markdown转pdf工具得到)。

    2017-2018-1 我爱学Java 第三周 作业 - 我爱学Java - 博客园

    团队展示

    2017-2018-1 我爱学Java 第二周 作业 - 我爱学Java - 博客园

    团队讨论选取Android上的一个游戏软件

    2017-2018-1 我爱学Java 第一周 作业 - 我爱学Java - 博客园

    团队学习分工《构建之法》和学习交流情况总结

    Scrum 冲刺 第一日 - 我爱学Java - 博客园
    Scrum 冲刺 第二日 - 我爱学Java - 博客园
    Scrum 冲刺 第三日 - 我爱学Java - 博客园
    Scrum 冲刺 第四日 - 我爱学Java - 博客园
    Scrum 冲刺 第五日 - 我爱学Java - 博客园
    Scrum 冲刺 第六日 - 我爱学Java - 博客园
    Scrum 冲刺 第七日 - 我爱学Java - 博客园
    Scrum 冲刺 总结 - 我爱学Java - 博客园

    冲刺(7次 Scrum)
    团队在日期区间[11.27,12.10]内,任选7天进行冲刺,冲刺当天晚10点前发布一篇随笔,共7篇。具体的博文规范如下:
    1)第 1 篇 Scrum 冲刺博客对整个冲刺阶段起到领航作用,应该主要包含四个部分的内容:
    各个成员在 Alpha 阶段认领的任务
    明日各个成员的任务安排
    整个项目预期的任务量(使用整数表示,与项目预估的总工作小时数一致。比如项目A预估需120小时才能完成,则任务量为120。)
    团队成员贡献值的计算规则
    2)第 2-7 篇 Scrum 冲刺博客是冲刺阶段的主要产出,主要包含四个部分的内容:
    各个成员今日完成的任务(如果完成的任务为开发或测试任务,需给出对应的Github代码签入记录截图;如果完成的任务为调研任务,需给出对应的调研总结博客链接;如果完成的任务为学习技术任务,需给出学习总结博客链接)
    各个成员遇到的问题
    明日各个成员的任务安排
    各个成员今日对项目的贡献量(使用整数表示,如无产出则为0,整个冲刺阶段所有成员的贡献量总和应与项目预期任务量相近)
    3)第 7篇 Scrum 冲刺是对冲刺阶段的总结,主要包含两个部分的内容:
    各个成员今日完成的任务(要求同上)
    项目的发布说明,主要包含:本版本的新功能,软件对运行环境的要求,系统已知的问题和限制,软件的发布方式以及发布地址。
    除上述博客内容外,每次 Scrum 冲刺博客都需要提供当天站立式会议照片一张,发布项目燃尽图,并描述项目整体的进展情况。

    代码托管链接

    statistic.sh运行结果:

    • 本学期的预期代码量已达到。

    积极主动敲代码做到没有?教材实践上有什么经验教训?

    有,教材上的代码不够全面,在做课后PP和平常的实验时还是遇到不少实际困难,还是得借助参考网上博客和源代码。

    课下测试

    - 第一、三、四、六、七、九、十、十一周课下测试

    课堂项目实践

    第三周
    泛型类-Bag(未完成)
    要求:
    0. 代码运行在命令行中,路径要体现学号信息,IDEA中,伪代码要体现个人学号信息

    1. 参见Bag的UML图,用Java继承BagInterface实现泛型类Bag,并对方法进行单元测试(JUnit),测试要涵盖正常、异常情况、边界情况。

    1 /**
    2 An interface that describes the operations of a bag of objects.
    3
    4 */
    5 public interface BagInterface

    算法复杂度-1&2&3

    第四周
    创建单链表
    链表节点删除和插入

    第五周
    用链表实现栈
    用数组实现栈
    Android演示Stack
    查找课堂测试
    排序课堂测试

    第六周
    Java Queue的测试
    用数组实现循环队列
    用链表实现队列

    第七周
    树计算
    遍历树1&2
    中后序构建树

    第九周
    堆排序
    构建堆
    堆的概念
    哈夫曼树的实现
    构造哈夫曼树

    第十周
    图表示
    十字链表
    邻接表
    邻接矩阵

    第十一周
    关键路径
    Dijkstra
    最小生成树
    图的广度&深度优先遍历

    第十二周
    hash

    课堂实践对提高应用能力有帮助吗?

    有。

    课堂实践上自己有什么经验教训?

    有些知识点虽然听懂了,但真正做的时候还是有很多疑惑需要自己去找资料解决问题。

    课堂实践上对老师有什么教学建议?

    有些要求提的不够明确和具体,导致理解上存在困难以及偏差。

    课程收获与不足

    收获是发现了不少不那么枯燥但很有用的工具书,打算寒假借阅看看;不足是有些地方没彻底弄懂,就被快速的学习进度赶着往前了,还有些作业不会做或者没来得及做完,假期打算自学,以后还是很有可能用到的。

    自己的收获(投入,效率,效果等)

    这学期比上学期明显投入了更多的精力,也看到了一些成效,比如博客的质量高了,课下对课堂内容的理解深入了。

    自己需要改进的地方

    自己遇到问题还是偏向于借助他人的力量,还是得自己多尝试才行,但这也是个耗时且会遭遇屡次失败的过程。

    结对学习是不是真正贯彻了?写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议

    没有很好地贯彻,结对伙伴张之睿同学帮助我理解了部分代码,但还有不少问题需要我自行解决。

    问卷调查

    你平均每周投入到本课程有效学习时间有多少?

    有效时间约20小时。

    每周的学习效率有提高吗?你是怎么衡量的?

    有提高,通过提交博客与作业的进度。

    蓝墨云班课的使用对你的学习有促进吗?有什么建议和意见吗?

    有促进,比如每周的课下测试,可方便巩固知识。

    你觉得这门课老师应该继续做哪一件事情?

    应该继续鼓励结对学习、组队开发项目以及推荐好的教材读物给大家。

    你觉得这门课老师应该停止做哪一件事情?

    应该停止出门门票和对结对小伙伴的学习总结。

    你觉得这门课老师应该开始做什么新的事情?

    开始适当减少作业量……上课多演示

    你如何评价出门门票和做笔记的要求?

    我觉得为了让我们养成做笔记的好习惯这个出发点是好的,但是每个人学习的方式不尽相同,不应强制要求必须手写记录笔记,有时候没东西写,只能刻意照抄ppt 上的内容并不能有利于我们理解上课内容,反而会干扰听讲思考。

    给出你的总结中涉及到的链接的二维码

  • 相关阅读:
    【学习笔记/题解】树上启发式合并/CF600E Lomsat gelral
    【学习笔记/题解】虚树/[SDOI2011]消耗战
    【题解】 [GZOI2017]小z玩游戏
    【题解】CF1426E Rock, Paper, Scissors
    【题解】CF1426D Non-zero Segments
    【题解】NOIP2018 填数游戏
    【题解】NOIP2018 旅行
    【题解】NOIP2018 赛道修建
    【题解】时间复杂度
    【题解】「MCOI-02」Convex Hull 凸包
  • 原文地址:https://www.cnblogs.com/JXY6996/p/8087646.html
Copyright © 2011-2022 走看看