预习队列

1.队列是什么?

是一种先进先出的的线性表,只允许一段删除另一端插入,允许删除的一端作为队头。同理另一端允许插入的,称为队尾。

2对队列的数据可以执行的操作有那些?

initqueue,初始化一个队列

destroyqueue,销毁一个队列

clearqueue清空队列

判断操作:

emptyqueue判断表是否为空

gethead 若表非空,则返回队列元素

enqueue插入队列元素到队尾

dequeue删除队头元素,并用e返回其值

queuelength检测队列元素的个数并返回

3循环队列存在的问题?

当队头被删除后的时候,后面的元素都需要往前一步替补队头。

当队列只有一个元素的时候,队头和队尾会重合。

引入font 和rear指针一个指向队头一个指向队尾的下一个位置,入栈时font不移动,始终指向队头,rear依次往后移动。

存在如果在队列满的情况下,不管删除多少元素,只要队尾有元素rear都会指到表外面去。会出现假溢出现象。

4.判读队列是否满的方法?

(rear+1)%最大表长==font,当等式成立则队列已满,否则还有空余。

5.队列的链式结构

在单链表的基础上,加上尾进先出的规则,就是队列的链式结构。

队头指针指向链表头结点,队尾指向终端结点。当队列为空表时,2个指针重合。

6循环队列的程序结构:


typedef int  qelemtype

typedef struct Node

{

   qelemtype data;

struct Node *next;


}结点结构

tydepef struct  linkqueue

{

   queue font, rear;


}链表结构

7:入队操作的实现:

  1.给指针变量分配一个内存空间

  2.将数据e给s->data

  3.将s的后继清空

 4.将拥有e的新结点赋值给队尾后继q-<next

 5将s设为队尾

 6返回一个ok字符的返回值

8 出队操作的实现:

1.先判断表是否为空,删除队头元素返回e。

2将e先给变量p存储,

3将队头结点后继赋给删除后头结点的后继

4如果只剩下一个元素,即font与rear指向同一个空间,则删除后rear和font同时指向队头结点。

9栈与队列的不同

栈只限于表尾进行删除插入操作的线性表

队列一端执行删除,一端执行插入。

10队列的分类

循环队列

顺序队列

链式队列

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Web前端开发这一领域是现代互联网行业中非常重要的一个职业岗位,负责将设计师设计的网站页面转化为实际可交互的网页。为了适应这个职业的要求,我进行了一段时间的预习,并整理了一些笔记。 首先,了解HTML(超文本标记语言)是十分重要的。它是构建网页结构的标准,可以通过标签定义不同的元素,如标题、段落、链接等。我学习了HTML的基本语法,如标签的使用规范、嵌套关系等。 其次,对CSS(层叠样式表)的理解也是必要的。通过CSS,我可以为HTML元素添加样式或者布局,使页面更加美观和易于阅读。我学习了CSS的选择器、属性和值,以及如何对文本、盒模型进行样式设置。 另外,JavaScript是实现网页交互性的重要一环。我了解了JavaScript的基本语法和DOM(文档对象模型),可以通过JavaScript操作网页元素,实现动态效果、表单验证等功能。 在学习的过程中,我还关注了响应式设计的概念。响应式设计可以使网页在不同设备上提供良好的用户体验,通过CSS媒体查询和弹性布局等技术,使页面适应不同的屏幕大小和分辨率。 此外,我还进行了一些实践练习,通过编写一些小项目来巩固所学知识。这些实践项目包括创建静态网页、制作简单的动画效果、实现表单验证等,帮助我理解和应用所学的技术。 综上所述,我的Web前端开发预习笔记主要包括HTML、CSS、JavaScript以及响应式设计的基础知识和实践经验。我相信这些准备工作可以为我之后的学习和工作打下良好的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值