天天看点

20162313苑洪铭 2017-2018-1 《程序设计与数据结构》第7周学习总结

20162313苑洪铭 2017-2018-1 《程序设计与数据结构》第7周学习总结

教材学习内容总结

树由一组结点及一组边构成,结点用来保存元素,边表示结点之间的连接。

树中较低一层的结点称为其前一层结点的子节点。

有相同父结点的结点称为兄弟结点。没有任何子节点的结点称为叶结点。

每个结点最多有两个子节点的树称为二叉树。

树的遍历

先序遍历:访问根,自左向右遍历子树。

中序遍历:遍历左子树,然后访问根,然后自左向右遍历余下的子树

后序遍历:自左向右遍历各子树,然后访问根。

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

  • 问题1:对于三种遍历方法没有很好的理解
  • 问题1解决方案:根据网上资料查到一个不错的图示

代码托管

上周考试错题总结

  • 错题1:What exception is thrown if the pop method is called on an empty stack?

    A .

    EmptyStackException

    B .

    NoSuchElementException

    C .

    ArrayOutOfBoundsException

    D .

    EmptyCollectionException

    E .

    none of the above

    正确答案: D

    如果在空堆栈上调用pop方法,则抛出EmptyCollectionException。

  • 错题2:
  • It is possible to implement a stack and a queue in such a way that all operations take a constant amount of time.

    true

    false

    正确答案: B

    堆栈和队列的理想实现具有需要恒定时间量的所有操作。

  • 错题3:
  • In a linked implementation of a stack, a pushed element should be added to the end of the list.

    在一个链接的堆栈实现中,一个被推送的元素应该被添加到列表的前面。 如果元素被添加到列表的末尾,弹出操作将需要线性时间,因为我们需要遍历整个元素以获得指向列表中下一个到最后一个元素的指针。

  • 错题4:
  • The List interface is implemented by the ________ class.

    array

    ArrayList

    String

    Object

    Exception

    ArrayList类实现了List接口。

结对及互评

  • 博客中值得学习的或问题
  • 代码中值得学习的或问题

本周结对学习情况

-20162309

- 结对学习内容

- 课本第16章

- 老师提供在蓝墨云班课的PPT

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

对于这门课程,还是需要付出更多的时间精力来进行学习。本学期明显感到学习内容相比而言更加困难,内容更加生涩难懂,给我们很大的压力

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 0/0 1/1 11/11
第三周 387/387 2/3 14/25
第五周 1232/1619 3/6 13/38
第七周 454/2073 4/7 11/49

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。

耗时估计的公式

:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

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

  • 计划学习时间:12小时
  • 实际学习时间:11小时

参考资料

  • 《Java程序设计与数据结构教程(第二版)》
  • 《Java程序设计与数据结构教程(第二版)》学习指导
  • ...