您的位置:首页 > 理论基础 > 数据结构算法

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

2017-10-28 09:57 393 查看

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

教材学习内容总结

1、二叉查找树的定义、性质

2、向二叉查找树中添加元素的方法

3、在二叉查找树中删除元素的方法

4、旋转的定义、方法、意义

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

问题1:我在17章中看到这么一句话:“最高效的二叉查找树是平衡的”,我的问题是:什么叫平衡,是两边数的分布得当还是两边的结点分布得当?

问题1解决方案:我通过上网查找资料后得到平衡二叉树的概念:平衡二叉树(Self-balancing binary search tree)又被称为AVL树(有别于AVL算法),且具有以下性质:它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树(资料来源——平衡二叉树_百度百科

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

问题1:在敲二叉查找树的主代码时看到这么一小段代码:

((BSTNode)root).add(item);

我的问题在于:为什么要强制转换

问题1解决方案:经过我的理解和同同学的讨论,我有以下结论:这里的root是从继承中super过来的,在构造方法被调用之前,root是BTNode类型的,而BTNode类型中没有add方法,因此要强制转换。其他的强制转换的原因也在于此。

代码托管



上周考试错题总结

错题1及原因,理解情况

错题2及原因,理解情况

...

学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)
目标5000行15篇400小时
第一周200/2002/220/20
第二周20/2201/320/40
第三周645/8651/414/54
第五周654/15191/518/72
第六周436/19551/616/88
第七周839/27942/820/108
第八周2143/49372/1025/133
计划学习时间:18小时

实际学习时间:25小时
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐