20162312第八周学习总结

教材学习内容总结

学习目标

  • 讨论二叉查找树的特性

  • 探讨二叉查找树的链式实现方式

  • 讨论Comparable接口

  • 讨论二叉查找树的旋转

二叉查找树的性质

  • 对于树中的每一个节点X,它的左子树任一节点的值均小于X,右子树上任意节点的值均大于X.

  • 二叉查找树是java的TreeSet和TreeMap类实现的基础

  • 由于树的递归定义,二叉查找树的代码实现也基本上都是使用递归的函数,二叉查找树的平均深度是O(logN).

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

  • 问题1:二叉查找树的删除掌握不是很好

  • 问题1解决方案:查找资料了解到删除涉及三种情况及对应解法: 被删除节点是树叶节点(没有子树):最简单,直接删除,将该节点置为null即可

     被删除节点有一个子节点(左子树或右子树):是该节点的父节点指向该节点的子节点(左或右).(左图)

     被删除节点有两个子节点:用其右子树中的最小值代替该节点上的值,删除其右子树上的最小值.(左图)

错题及总结(活动未结束,暂时无法看具体解析)

代码托管

结对及互评

讨论了二叉查找树如何删除及实验

本周结对学习情况

思考

学习还需要进一步深入

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 0/0 1/1 6/6
第二、三周 403/403 2/3 14/20
第4、5周 1452/1855 2/5 8/28
第6周 231/2086 1/6 8/36
第七周 620/2706 2/8 8/44
第八周 722/3428 2/10 8/52

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

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

  • 计划学习时间:9小时

  • 实际学习时间:8小时

  • 改进情况:

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

参考资料

posted @ 2017-10-29 20:10  20162312张家铖  阅读(111)  评论(0编辑  收藏  举报