zoukankan      html  css  js  c++  java
  • 《程序设计与数据结构》第二周学习总结

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

    教材学习内容总结

    • 栈遵循后进先出的的方式
    • 对于一个栈,所有的操作都是从一端开始的。所以要寻求适合的数据结构来处理问题。
    • 封装,继承,多态。封装是将部分变量,方法(的 内部细节)隐藏起来,使得不可见,从而提高安全性;继承,子类继承父类,提高代码的利用性;多态,在继承的基础上,重写父类的方法。
    • 泛型提供了一种“宽泛” 的数据类型,使得返回值可以随方法的需要返回所需要的类型。
    • 链表是先进先出的链式结构

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

    • 问题1:泛型的理解,探究
    • 问题1理解:什么是泛型,最直观的感受,就是一个类头中跟了一个并取代了具体的数据类型的返回值。这就是泛型。意义在哪里呢?可以想见,对一个类,我们需要确定其返回值,同时,类内也需要别的计算过程,需要别的数据类型,不同的数据类型如果分别用各种数据类型定义,太过繁琐,效率太低。如果使用数据类型强制转换,可能导致程序奔溃或计算错误。同时,不同的数据类型存储在一起也不会出现错误。
    • 问题2:继承中的super方法
    • 问题2理解:在书中的一行代码中,在新建一个异常类时,使用到了,super方法
    super("The "+ collection +"is empty.");
    

    super方法意味着什么呢?直接调用父类构造方法,同时也可以调用父类隐藏的方法,变量。

    • 问题3:多态与重构的区别
    • 理解:两者确实十分相似,在某些教材上二者甚至可以等同,但是,多态,就是“具有多种形式”,多态引用是一个引用变量,他可以在不同地方指向不同类型的对象。通过多态引用调用的某个方法,在每次调用时都可以发生变化。上面也提到,多态是通过继承实现的。通过继承,一个类可以用作多种类型:可以用作它自己的类型,或者在实现接口时用作任何接口类型。 对于重载,我们常常又叫做方法的重载。每个类型成员都有一个唯一的签名。方法签名由方法名称和一个参数列表(方法的参数的顺序和类型)组成。只要签名不同,就可以在一种类型内定义具有相同名称的多种方法。当定义两种或多种具有相同名称的方法时,就称作重载。即重载时相同名称成员的参数列表是不相同的(参数顺序和类型)。

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

    • 问题1:

    如图,在使用插入法时,提示进入死循环,且有异常报出。

    • 问题1解决方案:根据提示与单步调试的结果,最终发现问题出在

    (如图)。首先,回顾需求,需要在两个node之间插入一个新的node,当指针通过循环确认位置后,先将node2(新节点).next=point(指针).next 再使point.next=node2. next。即可完成插入过程。

    代码托管

    上周考试错题总结

    • 错题1:What is the order of the following growth function? t(n)= 5nlogn + 20n - 4

    • 理解情况 :通过这个图,我们可以直观的了解到nlogn与n的大小关系

    • 错题2:Which of the following has the smallest time complexity?

    • 理解情况 :显然,我们可以利用刚才的图,得出log2<nlogn的阶次

    • 错题3:The order of an algorithm is found by eliminating constants and all but the dominant term in the algorithm’s growth function

    • 理解情况 :从课本的原话可知,该句正确。

    点评过的同学博客和代码

    结对学习内容

    • 第3章 集合概述——栈
    • 第4章 链式结构——栈

    结对及互评

    • 优点:内容详实,图片丰富,总结问题到位。不过建议某些图可以缩小一些。

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

    • 可以看出,我这周总结了上学期的部分内容,对于这些老知识,我依然存在理解问题,但是在不断学习的过程中,我加深了印象,包括栈。上学期一直没有理解的链表,都得到了理解。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 0/0 1/1 3/3
    第二周 409/409 2/2 5/8

    参考资料

    对封装、继承、多态、抽象的理解
    java中super的作用
    【数据结构】链表的原理及java实现

  • 相关阅读:
    Cheatsheet: 2013 08.14 ~ 08.19
    Cheatsheet: 2013 08.01 ~ 08.13
    Cheatsheet: 2013 07.21 ~ 07.31
    Cheatsheet: 2013 07.09 ~ 07.20
    Cheatsheet: 2013 07.01 ~ 07.08
    Cheatsheet: 2013 06.23 ~ 06.30, Farewell GoogleReader(2008.07.20~2013.06.30)
    Cheatsheet: 2013 06.01 ~ 06.22
    mysql数据库备份参数
    css3 显示一行内容,多余的以省略号显示
    NPM install -save 和 -save-dev
  • 原文地址:https://www.cnblogs.com/326477465-a/p/9664750.html
Copyright © 2011-2022 走看看