《程序设计与数据结构》第7周学习总结

教材学习内容总结

  • 1.树及其分类
  • 2.树的遍历
  • 3.二叉树的实现
  • 本周学习的内容是十六章的树的内容。树是由一组结点(保存元素)或一组边构成。其中关于结点的分类有:子结点(孩子)、父结点(双亲)、兄弟结点(兄弟),还有一个祖先类比的结点。其中,叶结点代表的是没有任何子结点的结点。树中构成的另一个树叫子树。树的高度或深度定义为从树中从根到叶结点的最长路径的长度。
  • 关于树的分类:有一般树(对子结点的个数没有限制)、二叉树(每个结点最多只有两个子结点)、完全树、不完全树、平衡树。
  • 关于遍历的分类:其中有先序遍历(访问根,自左至右遍历子树)、中序遍历(遍历左子树,然后访问根,然后自左至右遍历余下的各个子树)、后序遍历(从树的顶层(根)到底层,从左至右,访问树中每层的每个结点。)

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

  • 问题1:中序遍历如何理解?
  • 问题1解决方案:其实中序遍历我一开始的理解是:遍历左子树,再访问根。我错误地把左右子树合在一起看成左子树。就类似于课本上的这张图。正确的中序遍历(对D这个B的左子树来说)应该是H→D→I,但我理解成了H→I→D。总结一下我的错误就是没有分清左子树和右子树的概念,概念混淆不清。

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

  • 问题1:暂无
  • 问题1解决方案:暂无

代码托管

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

上周考试错题总结

结对及互评

20162330刘伟康

点评模板:

  • 博客中值得学习的或问题:
    • 排版精美,风格独具。
  • 代码中值得学习的或问题:
    • 对于树的方法实现相比我的复杂的多也很方便。我的就太简单了
  • 博客中需要注意的问题:

本周结对学习情况

- [20162330](http://www.cnblogs.com/super925/p/7709745.html)
- 结对学习内容
    - 树的方法实现、队列

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

本周学习的树由于提前预习还是觉得大部分内容可以掌握,但对于树的计算还是不太清楚乃至混淆。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 500/1000 3/7 22/60
第四周 300/1300 2/9 30/90
第五周 300/1600 4/13 25/120
第六周 300/1900 1/14 20/140
第五周 300/2200 3/17 20/160

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

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

  • 计划学习时间:25小时

  • 实际学习时间:20小时

  • 改进情况:有人监督的情况下学习时间多数在图书馆

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

参考资料

posted on 2017-10-22 22:46  20162319莫礼钟  阅读(151)  评论(0编辑  收藏  举报