# 20162312 2017-2018 《程序设计与数据结构》第7周学习总结
2017-10-21 14:16
441 查看
教材学习内容总结
学习目标
定义与树相关的术语讨论树实现的策略
讨论树的不同的遍历方法
使用二叉树表示决策树
二叉树的性质
性质1:在二叉树的第i层上至多有2i-1个结点(i≥1)。(数学归纳法可证)性质2:深度为k的二叉树最多有2k-1个结点(k≥1)。(由性质1,通过等比数列求和可证)
性质3:一棵二叉树的叶子结点数为n0,度为2的结点数为n2,则n0 = n2 + 1。
性质4:具有n个结点的完全二叉树的深度为floor(log2n) + 1 。
性质5:如果对一棵有n个结点的完全二叉树(其深度为floor(log2n) + 1 )的结点按层序编号,则对任一结点
教材学习中的问题和解决过程
问题1:对于已知遍历反推二叉树不能很熟练的掌握问题1解决方案:寻找了一个例题联系了一下:先序遍历:GFKDAIEBCHJ
中序遍历:DIAEKFCJHBG
已知以上两个二叉树遍历,怎么样能反推出二叉树?
解答:由前序知,g为root,f为左孩子,又根据中序知道,g没右支。
看f,由中序知,DIAEK为f左支,CJHB为f右支
由前序知,k为f左孩子,d为k左孩子,k无右支
又由中序知,d没左支。
那么iae为d右支,又由前序知,a为d右孩子,而i、e为其左右叶子
同样的道理计算出f右支cjhb的顺序,就求出来了
错题及总结(活动未结束,暂时无法看具体解析)
代码托管
结对及互评
讨论了逆推二叉树本周结对学习情况
20162324思考
学习还需要进一步深入学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 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 |
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
参考:软件工程软件的估计为什么这么难,软件工程 估计方法
计划学习时间:9小时
实际学习时间:8小时
改进情况:
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)
参考资料
《Java程序设计与数据结构教程(第二版)》《Java程序设计与数据结构教程(第二版)》学习指导
相关文章推荐
- # 20162312 2017-2018-3 《程序设计与数据结构》第3周学习总结
- 20162306 2017-2018-1 《程序设计与数据结构》第7周学习总结
- 20162326 2017-2018-1 《程序设计与数据结构》第7周学习总结
- # 20162312 2017-2018-1 《程序设计与数据结构》第1周学习总结
- 20162324 2017-2018-1 《程序设计与数据结构》第7周学习总结
- 20162307 2017-2018-1 《程序设计与数据结构》第7周学习总结
- 20162319 2017-2018-20162319 《程序设计与数据结构》第7周学习总结
- # 20162312 2017-2018-3 《程序设计与数据结构》第5周学习总结
- # 20162312 2017-2018-3 《程序设计与数据结构》第6周学习总结
- 20162305 2017-2018-1 《程序设计与数据结构》第7周学习总结
- 20162313苑洪铭 2017-2018-1 《程序设计与数据结构》第7周学习总结
- 20162311 2017-2018-1 《程序设计与数据结构》第九周学习总结
- 20162305 2017-2018-1 《程序设计与数据结构》第9周学习总结
- 2017-2018-1 20155316 《信息安全系统设计基础》第7周学习总结
- 2017-2018-1 20155335 俞昆 《信息安全系统设计基础》第7周学习总结
- 20162330 2017-2018-1《程序设计与数据结构》第三周学习总结
- 20162326 2017-2018-1 《程序设计与数据结构》第5周学习总结
- 20162317 2017-2018-1 《程序设计与数据结构》第9周学习总结 18章 堆
- 20162306 2017-2018-1《程序设计与数据结构》 第11周学习总结
- 20162308 2017-2018-1 《程序设计与数据结构》第一周学习总结