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


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

    教材学习内容总结

    第五章 队列

    • 1.队列是一种线性集合,元素从一段加入从另一端删除(先进先出)。
    • 2.队尾(tail),队首(head),队列前端(front),队列末端(rear)。
    • 3.使用队列的一些实例:凯撒密码,售票口模拟。
    • 4.分别用链表和数组实现队列。
    • 5.双端队列,允许从队列的两端添加、删除和查看元素。
    • 6.环形数组实现队列。

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

    • 问题1:为什么用数组实现队列时,环形数组较好?
    • 问题1解决方案:环形队列可以解决数组移动的缺点,当尾指针超出数组末尾时,尾指针移动数组头部。这就将数组虚拟成了一个环形,只要队列长度没达到最大值,就可以插入,而不用移动数组。

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

    书上的代码有很多的错误!所以直接在源代码中修改了

    • 问题1:从尾部移出元素的方法,元素个数变少了,但是最终toString方法时,还是会输出移出的元素。


    • 问题1解决方案:运用了一个循环,找到倒数第二个元素,并把它做为了队尾。

    代码托管

    上周考试错题总结

    • 上周没进行测试。

    点评过的同学博客和代码

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

    • 首先我就想说一下我觉得这学期的教材没有上学期的好,其一是代码中出现了很多的错误,按照书上的代码敲的程序都不能正常运行,变量名前后不统一,多括号,变量名就是错的等等有好多的问题严重影响自主学习!其二是代码后没有给出运行结果,就无法对比自己的结果是否正确。
    • 其次我要抽时间把用数组和链表实现栈和队列,还有双向链表,环形数组等好好研究一下做个总结博客,并且把以后要学的列表等慢慢补全。
    • 最后想说的就是队列的实现和栈的思路很像。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 0/0 1/1 2/2
    第二周 1010/1010 1/2 10/12
    第三周 651/1661 1/3 13/25
    • 计划学习时间:20小时

    • 实际学习时间:13小时

    • 改进情况:因为和栈的思路很像,所以很多都是在栈的代码上进行修改。

    参考资料

  • 相关阅读:
    对象流(序列化,反序列化)
    随机存取文件流(双性流)
    网络编程
    ByteArrayOutputStream小测试
    Java基础
    IO流实现GBK写入文件然后转换UTF-8
    IO流实现简单的文件的剪切
    递归
    ZKDQ--问题整理
    postman测试上传文件接口
  • 原文地址:https://www.cnblogs.com/yu757503836/p/9697319.html
Copyright © 2020-2023  润新知