20162310 2017-2018-1 《程序设计与数据结构》第3周学习总结
教材学习内容总结
- 查找实在一组项内找到指定目标或是确定目标不存在的过程。
- 搞笑的查找使得比较的次数最少。
- Comparable接口允许多态实现算法,而不是只应用于特定的类。
- 二分查找利用了查找池有序的这个特性。
- 二分查找的每次比较都排除了一半的可行候选数据。
- 排序是按某种标准将一列数据项确定的次序重排的过程。
- 二分查找有对数阶的复杂度,对于大的查找池来说,这非常有效率。
- 选择排序、插入排序及冒泡排序的平均运行时间复杂度是O(n^2)。
- 快速排序的关键是选择一个好的划分元素。
- 归并排序的最差运行时间复杂度是O(n log n)。
教材学习中的问题和解决过程
- 问题1:对于各个排序方法的掌握还是不够到位
- 问题1解决方案:通过书本,PPT以及网上查资料,进一步了解了他们之间的区别以及他们的代码实现
- 插入排序分为直接插入排序和希尔排序
- 交换排序分为冒泡排序和快速排序
- 选择排序分为简单选择排序和堆排序
- 归并排序
- 分配排序分为桶排序和基数排序
代码调试中的问题和解决过程
- 见博客泛型类Bag
代码托管
虚拟机没有用了,IDEA无法跟踪
上周考试错题总结
无
结对及互评
点评模板:
- 博客中值得学习的或问题:
- 王译潇同学的博客阅读起来十分有趣
- 代码中值得学习的或问题:
- 严谨认真
本周结对学习情况
- 20162314
- 结对学习内容
- 探究算法分析规律
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 200/200 | 1/1 | 5/10 | |
第二周 | 200/200 | 0/1 | 4/6 | |
第三周 | 200/200 | 3/1 | 5/5 | |
第四周 | / | / | / |