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

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

教材学习内容总结

查找与排序

查找:查找是在一组数据组中找到指定的目标元素,或是判定组内不存在目标的过程。
排序:排序是根据某些标准,将一组数据项按确定的次序重排,或为升序或为降序。
查找主要为线性查找与二分查找
排序主要为选择排序、插入排序、冒泡排序、快速排序、归并排序。前三种算法效率差不多,方法不同。后两种算法的效率更高,也比较复杂。
image

教材学习中的问题和解决过程

(一个模板:我看了这一段文字 (引用文字),有这个问题 (提出问题)。 我查了资料,有这些说法(引用说法),根据我的实践,我得到这些经验(描述自己的经验)。 但是我还是不太懂,我的困惑是(说明困惑)。【或者】我反对作者的观点(提出作者的观点,自己的观点,以及理由)。 )

  • 问题1:对于快速排序与归并排序的理解
  • image
  • 问题1解决方案:首先是效率问题,二者都是O(nlogn)阶,但是当快速排序没有选择一个好的枢轴时,快速排序的复杂度会降为O(n2)阶,如此来说应该是归并排序更加有效率一些吧。

代码调试中的问题和解决过程

  • 问题1:XXXXXX
  • 问题1解决方案:XXXXXX

代码托管

(statistics.sh脚本的运行结果截图)
image

结对及互评

  • 博客中值得学习的或问题

  • 代码中值得学习的或问题

本周结对学习情况

-20162309
- 结对学习内容
- 课本第十三章
- 排序PPT

其他(感悟、思考等,可选)

学习进度进入软件开发领域,学习了软件开发领域最常见的两项任务查找与排序。对比上学期,的确在相关学习方面更进了一步。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 0/0 1/1 11/11
第二周 286/286 2/3 14/25

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 计划学习时间:15小时

  • 实际学习时间:14小时

  • 改进情况:

(有空多看看现代软件工程 课件
软件工程师能力自我评价表
)

参考资料

posted @ 2017-09-24 16:30  DeforeSya  阅读(236)  评论(2编辑  收藏  举报