• 20172318 2018-2019-1 《程序设计与数据结构》第4周学习总结


    20172318 2018-2019-1 《程序设计与数据结构》第4周学习总结

    教材学习内容总结

    列表

    • 列表集合有以下3种类型:

      • 有序列表(orderedlist),其元素按照元素的某种内在特性进行排序。有序列表中的元素具有内在关联,这种关联定义了元素之间的顺序。

      • 无序列表(unorderedlist),其元素间不具有内在顺序,元素按照它们在列表中的位
        置进行排序。无序列表中的元素按使用者所选择的任意方式排序·

      • 索引列表(indexedlist),其元素可以用数字索引来引用。索引列表为它的元素维护一段连续的数字索引值·

    • 使用数组实现列表

      • 为了避免要移动元素。可以使用环形数组方法,但当从列
        表中间插入或删除元素时,仍需要移动元素。

      • remove操作要求我们查找仵为参数传递的元素,如果找到就从列表中将其删除。然后,
        数组中更高索引的元素向下平移以填补空隙。

      • contains操作的作用是判断指定元素是否包含在列表当中。

      • add操作是将一个元素添加到有序表中的唯一方式。调用中没有指定添加到的位置,
        因为元素本身就决定了它们的次序。与remove操作非常像,add操作也需要比较和平移操
        作:进行比较以找到元素在列表中的正确位置,然后平移元素以便为新元素腾出一个位置。

      • 只有Comparable对才能存储在有序列表中。

    • 使用链表实现列表

      • remove操作是LinkedList类的一部分,为无序列表和有序列表所共有。remove操作包
        括,确认列表非空,查找要删除的元素,然后处理以下4种情况之一:要删除的元素是列
        表中的唯一元素,要删除的元素是列表中的泞元素,要删除的元素是列表中末尾元素,或
        者要删除的元素处于列表当中位置。在所有这些情况下,count都将递减1。与数组实现的
        remove操作不同,链表实现的remove操作不需要平移元素来填补空隙。

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

    • 问题1:modcount是什么
    • 问题1解决方案:看了下第七章,课本的解释是:modCount是一个整数变量,在外部类ArrayList中定义的。如果回顾一下第6章,就会明白,一旦集合被修改(比如往集合中添加了元素),modCount就会增加。因此,当创一个新迭代器时,其修改计数就设置为等于集合自己的计数。如果两个值不一致了(由于集合进行了更新),那么迭代器将抛出ConcurrentModificationException异常。

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

    • 问题1:代码报错,但是从头翻到尾没看见错误
    • 问题1解决方案:使用f2查找了一下,发现是注释报错了,在网上查了一下,貌似idea会出现这个错误,重启了一下就没了

    上周考试错题总结

    • 错题1及原因,理解情况
      A pop operation on a Stack returns a(n)
      A .node
      B .element
      C .variable
      D .pointer

    选B,返回一个元素

    • 错题2及原因,理解情况
      Which of the following is the correct way to instantiate an array of 10 generic objects?
      A .Which of the following is the correct way to instantiate an array of 10 generic objects?
      B .T[10] x = new T[]
      C .T[] x = (T[])(new object[10])
      D .None of the above

    选C,泛型数组的声明方式有点不同

    • 错题3及原因,理解情况
      The variable top in the array implementation of a Stack refers to
      A .The next available position in the array
      B .The item at the top of the Stack
      C .The number of items in the stack
      D .A and C
      E .None of the above

    选D,那时候觉得不是a就是c,没想到两个都是

    • 错题4及原因,理解情况
      A well-defined interface masks the implementation of the collection.
      A .true
      B .false

    选A,定义良好的接口可以帮助集合更好的实现

    代码托管

    点评过的同学博客和代码

    • 本周结对学习情况
      • 20172312
      • 结对学习内容
        • 课本第六章

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 0/0 1/1 8/8
    第二周 500/500 1/2 15/ 23
    第三周 802/1302 1/3 12/35
    第四周 1530/2832 2/5 15/50

    参考资料

  • 相关阅读:
    Google Map Api V3 系列之 导航(包括清除线路)
    ENSP学习华为防火墙功能
    让Chrome 浏览器显示隐藏的https和www
    win7 x64 SP1把IE从8升级到11的先决条件
    解决“Windows照片查看器无法显示此图片,因为计算机上的可用内存可能不足……”
    火绒软件没有离线病毒库独立安装包的解决方法
    成功注册GitHub20211116
    网络基础知识积累
    【问题解决】win10连接了不可路由的以太网后,会阻止使用 WWAN 访问 Internet
    ENSP学习华为防火墙(第二天,20211127 )
  • 原文地址:https://www.cnblogs.com/m1sty/p/9750766.html
Copyright © 2020-2023  润新知