标签:操作 线性 特殊 ring nod 学习 长度 .com 存储空间
队列的示意图
实现队列时,要注意的是假溢出现象。如上图的最后一幅图。如图所看到的的假溢出现象
解决的方法:使用链式存储,这显然能够。在顺序存储时。我们常见的解决的方法是把它首尾相接,构成循环队列。这能够充分利用队列的存储空间。
循环队列示意图:
在上图中。front指向队列中第一个元素。rear指向队列队尾的下一个位置。
但依旧存在一个问题:当front和rear指向同一个位置时,这代表的是队空还是队满呢?大家能够想象下这样的情景。
解决这种问题的常见做法是:
1.使用一标记,用以区分这样的易混淆的情形。
2.牺牲一个元素空间。当front和rear相等时,为空。当rear的下一个位置是front时。为满。
例如以下图:
问题1:在做习题pp5_1的时候,向队列中添加了两个不同的int型数值,但是输出的时候两个都是第一次输入的数值。
public void enqueue(T element) {
LinearNode<T> node = new LinearNode<T>(element);
if(isEmpty())
head = node;
else
tail.setNext(node);
tail = node;
count ++;
}
??转眼间,开学也已经快一个月了,又找到了上学期学习的感觉,但由于中秋假期的影响,还是感到自己这周的学习时间不太够,仅仅只完成了教材内容和代码练习而已,并没有去进行更多的拓展学习。我能感到自己状态有所好转,能够静下心来认真看书,专心敲代码了,但还是要付出更多的时间才行,继续加油!
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
第一周 | 200/200 | 1/1 | 5/20 | |
第二周 | 981/1181 | 1/2 | 15/20 | |
第三周 | 1694/2875 | 1/3 | 15/35 |
计划学习时间:15小时
实际学习时间:15小时
目前水平 (0~9) | 课程结束后水平 (0~9) | |
---|---|---|
对编程总体理解 | 3 | 8 |
程序理解 | 5 | 8 |
模块实现,逐步细化 | 2 | 7 |
单元测试,代码覆盖率 | 4 | 8 |
代码质量 | 6 | 8 |
20172313 2018-2019-1 《程序设计与数据结构》第三周学习总结
标签:操作 线性 特殊 ring nod 学习 长度 .com 存储空间
原文地址:https://www.cnblogs.com/yu-kunpeng/p/9700281.html