20162305 2016-2017-2《程序设计与数据结构》课程总结

20162305 2017-2018-2《程序设计与数据结构》课程总结

每周作业链接汇总

第一周作业

  • 简要内容:

    • 什么是算法
    • 算法的时间复杂度
    • 什么是数据结构
  • 二维码:

第二周作业

  • 简要内容:

    • 泛型的使用
    • 利用Comparable接口进行查找比较
  • 二维码:

第三周作业

  • 简要内容:

    • 查找的两种方法:线性查找和二分查找
    • 排序的五种方法:选择排序、插入排序、冒泡排序、快速排序和归并排序
    • 不同的查找和排序算法的时间复杂度
  • 二维码:

第四周作业

  • 简要内容:

    • 本周我们主要完成了实验一的内容
  • 二维码:

第五周作业

  • 简要内容:

    • 什么是栈
    • 泛型
    • 链式结构
    • 利用数组和链实现栈
  • 二维码:

第六周作业

  • 简要内容:

    • 什么是队列
    • 使用链表实现队列
    • 使用数组实现队列
  • 二维码:

第七周作业

  • 简要内容:

    • 什么是树
    • 树的结点
    • 树的遍历
  • 二维码:

第八周作业

  • 简要内容:

    • 实验二
    • 二叉查找树
    • 二叉查找树的相关操作和算法
  • 二维码:

第九周作业

  • 简要内容:

    • 添加元素入堆
    • 删除堆中的元素
    • 优先队列
  • 二维码:

第十周作业

  • 简要内容:

    • 无向图
    • 有向图
    • 带权图
    • 常用的图的算法
  • 二维码:

第十一周作业

  • 简要内容:

    • 哈希算法和哈希函数
    • 图的存储结构以及实现
    • 图的遍历
    • 图的生成树问题
  • 二维码:


自认为写得最好一篇博客是?为什么?


我认为我写过的最好的一篇博客是实验四实验报告。我认为我在写这篇博客的时候认真学习了图的相关应用,并且很好地将我学习到的内容反映到了博客中。


作业中阅读量最高的一篇博客是?谈谈经验


我的作业中阅读量最高的一篇博客同样也是实验四实验报告。这篇博客的阅读量最高的原因,我认为是在这篇博客中我很清晰地写清楚了实验过程,对实验中的关键代码都进行了理解和注释,这样很容易大家阅读学习。

实验报告链接汇总

实验一 线性结构

  • 简要内容

    • ArrayList和LinkedList测试
    • 分别用Java的ArrayList和LinkedList实现有序线性表的合并
    • 用数组实现线性表List
    • 用链表实现线性表List
    • 对Java的ArrayList,LinkedList按要求进行源码分析
  • 二维码:

实验二 树

  • 简要内容

    • 链树的实现
    • 构造二叉树
    • 决策树
    • 表达式树
    • 二叉查找树
    • 红黑树分析
  • 二维码:

实验三 查找和排序

  • 简要内容

    • 查找和排序教材代码
    • 重构代码
    • 查找和排序的算法测试
  • 二维码:

实验四 图的实现和应用

  • 简要内容

    • 邻接矩阵实现无向图
    • 十字链表实现无向图
    • 最短路径问题
  • 二维码:

实验五 数据结构综合应用

  • 简要内容

    • 分析系统架构
    • 编译、运行、测试系统
    • 修改系统
    • 分析数据结构、排序查找算法应用
  • 二维码:

团队项目报告链接汇总

团队作业第一周 《构建之法》学习笔记及团队成员介绍

  • 简要内容

    • 《构建之法》每章学习以及学习过程中遇到的问题
    • 小组成员介绍
  • 二维码

团队作业第二周 关于游戏软件的问题

  • 简要内容

    • 关于游戏软件的问题
    • 小组成员游戏讨论
  • 二维码

团队作业第三周 团队展示

  • 简要内容

    • 团队展示
    • 团队初步合作
    • 团队选题
  • 二维码

团队作业第四、五周

  • 简要内容

    • 近两周工作内容总结
    • 工作分工
  • 二维码

团队作业第六、七周

  • 简要内容

    • 修改规格说明书
    • 后端架构
    • 代码规范
  • 二维码

团队作业第八周

  • 简要内容
    • 反思和总结
  • 二维码

团队作业冲刺一

  • 简要内容

    • 小组分工
    • 爆炸类
  • 二维码

团队作业冲刺二

  • 简要内容

    • 总体架构
    • 精灵类
  • 二维码

团队作业冲刺三

  • 简要内容

    • MainActivity
    • GameActivity
  • 二维码

团队作业冲刺四

  • 简要内容

    • EnemyPlane
    • SmallEnemyPlane
  • 二维码

团队作业冲刺五

  • 简要介绍

    • 战斗机类
  • 二维码

团队作业冲刺六

  • 简要介绍

    • GameView的实现
  • 二维码

团队作业冲刺七

  • 简要内容

    • 总体总结
    • 反思和思考
  • 二维码

代码托管链接

  • 给出statistic.sh的运行结果,说明本学期的代码量目标达到没有?

  • 代码量达到了要求。

加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得

  • 教材上的代码是基础,在教材上的代码的基础上,通过修改代码可以更加直观地理解每行代码的含义和内涵。也正是通过加代码和修改代码的过程,我才学习到更多代码的意思和功能。这是一种很有效的学习方式。

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

  • 我感觉我还没有很好地达到积极主动敲代码,写代码还是有些被动,一直跟着教学的节奏在走。教材实践的过程中,我也发现了教材上的代码也并不都是完全正确的,自己在实践中还是要带有更多自己的思考和理解,以教材代码为基础,但不能完全依赖于教材代码。

课堂项目实践

  • 参考2016-2017-2 《Java 程序设计》课堂实践项目

算法复杂度实践

  • 简要内容

    • 求一个整数二维数组Arr[N][N]的所有元素之和
    • 对于输入的任意3个整数,将它们按从小到大的顺序输出。
    • 对于输入的任意 n 个整数, 输出其中的最大和最小元素。
  • 二维码

队列课下作业

  • 简要内容

    • 补充教材上的代码
    • 单步跟踪
  • 二维码

杨辉三角

  • 简要内容

    • 用循环队列打印杨辉三角
  • 二维码

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

  • 我觉得很有帮助,对我们写代码和理解理论知识都很有帮助。

自我总结

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

  • 能够让自己更加容易意识到自己知识学习的盲点,然后再通过实践解决

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

  • 建议老师在课堂实践的过程之前,能够将实践部分的内容讲的更加透彻一些,让同学们能够理解更加深刻后再去实践。

课程收获与不足(不要抄上学期的,否则会扣分)

  • 这个学期课程的学习,让我了解了算法等新的知识内容。像栈,链表这样的数据结构的应用和算法都是我这学习得到的宝贵财富。通过这学期的学习,我感觉我的逻辑思考能力有一些进步,而且写代码这一部分的能力相比较于上学期也有提高。不足的部分也有很多,我认为我这学期最大的不足就是对这门课程的学习效率不高,不够主动,对细节把握不够,时间利用的不好,而且代码写的也不够简洁。

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

  • 这学期,我对于这门课程的学习也投入了很多时间,感觉自己在编写代码这部分投入的时间和精力比上学期更多了,不过自己的逻辑思考能力有时候还是不足以写好要求的代码。我在学习的过程中也不够踏实,这些都是我学习过程中的收获:踏实研究和认真思考。本学期的效率我认为还不是很好,但是学习的效果相比较于上学期好了很多。

自己需要改进的地方

  • 更加严谨,更加踏实,更加专注,更多思考

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

  • 结对学习这部分我感觉不如上学期开展的好,这学期我和我的结对伙伴在学校都担任有学生工作,能坐在一起学习的时间很少。虽然平时一直有交流,不过结对效果并不明显。我觉得在做团队项目时,团队学习的效果很好,我在团队学习的过程中通过讨论和研究项目学习了很多。建议老师可以继续保持这样的方式来做项目。

问卷调查

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

  • 每周至少15个小时,课程多的时候会达到20小时

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

  • 通过代码量,博客以及对教材内容的感觉理解,综合三项结合实际消耗时间来衡量学习效果。我感觉我的效率有一点点提高。

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

  • 蓝墨云班课是个很好的学习软件,经验值的设置也能激励同学的学习,而且云班课上也有很好的学习资源,这都对我的学习有很好的促进作用。我建议可以继续保持。

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

  • 小组学习、团队项目(项目也不只是局限于Android开发,也可以一起写一些其他的东西)

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

  • 出门门票和一些加分项目

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

  • 可以尝试新的教学方法,将传统方法和新式方法更好结合

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

  • 记笔记很好,有助于同学复习理解。而出门门票有些形式化,可以考虑取消。改成定期检查笔记(不作为强制要求 项目,只是建议记笔记)
posted @ 2017-12-23 14:26  20162305李昱兴  阅读(210)  评论(0编辑  收藏  举报