zoukankan      html  css  js  c++  java
  • 20172316 2018-2019-1《程序设计与数据结构》第四周学习总结

    20172316 2017-2018-2《程序设计与数据结构》第四周学习总结

    教材学习内容总结

    第六章 列表

    列表和之前的栈、队列有相似之处,都是一种集合,不同之处在于:列表可以在中间添加和删除元素。

    其方法主要有

    方法 描述
    add(E element) 列表末端添加
    add(int index,E element) 索引处添加
    get(int index) 返回索引处元素
    remove(E o) 删除列表中第一个o
    remove(int index) 删除索引处元素
    set(int index,E element) 替代索引处元素
    size() 返回元素数量

    这些方法实现起来和之前的线性结构并无二致,之前也在队列中使用过中间插入的方法,处理起来不难。

    无序和有序:这是本章和之前最不一样的地方,列表分为三种类型:有序、无序、索引。有序列表add()时会根据所添加元素的关键值自动排序;无序列表则可以根据需要添加至所制定的位置(前addToFront()、后addToRear()、中addAfter())。

    利用数组、链表来实现有序和无序列表:理解了上面的概念后,无需列表实现方法和栈、队列的实现基本相同。值得注意的是有序列表需要Comparable接口来帮助实现,参考了上学期第八周的作业和知识进行复习。


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

    • 有序无序,当时光从字面上理解,误以为有序指具有线性的结构而无序反之,结果并不是这样。有序和无序指的是列表元素的内在关联,看书后得到正确理解(上面↑)

    • 什么是Serializable接口?(串行化?序列化?)

    引用:

    什么是Serializable接口?
    一个对象序列化的接口,一个类只有实现了Serializable接口,它的对象才能被序列化
    什么是序列化?
    将对象的状态信息转换为可以存储或传输的形式的过程,在序列化期间,对象将其当前状态写入到临时存储区或持久性存储区,之后,便可以通过从存储区中读取或反序列化对象的状态信息,来重新创建该对象
    什么情况下需要序列化?
    当我们需要把对象的状态信息通过网络进行传输,或者需要将对象的状态信息持久化,以便将来使用时都需要把对象进行序列化


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

    基本没有问题,都是可以立马解决的小细节(索引差一位、链表一个指针丢失的小问题)。


    代码托管

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


    上周考试错题总结

    • 1.Because queue operations modify both ends of the collection, fixing one end at index 0 eliminates the requirement that elements be shifted.
    • 正确答案:False
    • 原因:书中说:由于队列操作会修改集合的两端,因此将一端固定在索引0处。并未说消除了元素位移的需求。
    • 2.Treating arrays as circular eliminates the need to shift elements in an array queue implementation.
    • 正确答案:True
    • 原因:环形数组消除了元素位移的需求,是对的,估计我是选错了。
    • 3.A polymorphic reference can refer to different types of objects over time.
    • 正确答案:True
    • 原因:这不就是多态的特点吗?
    • 4.A linked implementation of a stack adds and removes elements from the _______ of the linked list.
    • 正确答案:A.Front
    • 原因:未认真看题,以为应选top

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 0/0 1/1 6/6
    第二周 771/771 1/2 16/22
    第三周 562/1233 1/3 15/37
    第四周 1503/2736 2/5 15/52

    结对互评

    唐才铭19
    王文彬29

    参考资料

  • 相关阅读:
    关于同余最短路
    【水】关于 __attribute__
    题解【AtCoder
    一些简单图论问题
    浅谈简单动态规划
    关于博客园主题(美化博客园)
    Algebra, Topology, Differential Calculus, and Optimization Theory For Computer Science and Machine Learning 第47章 读书笔记(待更新)
    Algebra, Topology, Differential Calculus, and Optimization Theory For Computer Science and Machine Learning 第46章 读书笔记(待更新)
    Algebra, Topology, Differential Calculus, and Optimization Theory For Computer Science and Machine Learning 第45章 读书笔记(待更新)
    Algebra, Topology, Differential Calculus, and Optimization Theory For Computer Science and Machine Learning 第44章 读书笔记(待更新)
  • 原文地址:https://www.cnblogs.com/zhaoqianchen/p/9751552.html
Copyright © 2011-2022 走看看