全部科目 > 数据库系统工程师 >
2022年上半年 上午试卷 综合知识
第 7 题
知识点 队列  
关键词 队列  
章/节 计算机软件基础知识  
 
 
依次在初始为空的队列中插入元素5、6、7、8以后,紧接着做了两次删除操作,此时的队头元素是()。
 
  A.  5
 
  B.  6
 
  C.  7
 
  D.  8




 
 
相关试题     计算机软件基础知识 

  第19题    2009年上半年  
在Windows XP操作系统中,用户利用“磁盘管理”程序可以对磁盘进行初始化、创建卷,(19)。通常将“C:\Windows\myprogram.exe”文件设置成只..

  第1题    2009年上半年  
海明校验码是在n个数据位之外增设k个校验位,从而形成一个k+n位的新的码字,使新的码字的码距比较均匀地拉大。n与k的关系是(1)。

  第69题    2010年上半年  
以下HTML代码中,创建指向邮箱地址的链接正确的是(69)。

 
知识点讲解
· 队列
 
        队列
               队列的定义及基本运算
               队列是一种先进先出(FIFO)的线性表,它只允许在表的一端插入元素,而在表的另一端删除元素。在队列中,允许插入元素的一端称为队尾(rear),允许删除元素的一端称为队头(front)。
               队列的基本运算如下:
               ①初始化队列initQueue(Q):创建一个空的队列Q。
               ②判队空isEmpty(Q):当队列为空时返回“真”值,否则返回“假”值。
               ③入队enQueue(Q,x):将元素x加入到队列Q的队尾,并更新队尾指针。
               ④出队deQueue(Q):将队头元素从队列Q中删除,并更新队头指针。
               ⑤读队头元素frontQueUe(Q):返回队头元素的值,但不更新队头指针。
               队列的存储结构
               (1)队列的顺序存储。队列的顺序存储结构又称为顺序队列,它也是利用一组地址连续的存储单元存放队列中的元素。由于队中元素的插入和删除限定在表的两端进行,因此设置队头指针和队尾指针,分别指示出当前的队首元素和队尾元素。
               设顺序队列Q的容量为6,其队头指针为front,队尾指针为rear,头、尾指针和队列中元素之间的关系如下图所示。
               
               队列的头、尾指针与队列中元素之间的关系
               在顺序队列中,为了简化运算,元素入队时,只修改队尾指针;元素出队时,只修改队头指针。由于顺序队列的存储空间是提前设定的,因此队尾指针会有一个上限值,当队尾指针达到其上限时,就不能只通过修改队尾指针来实现新元素的入队操作了。此时,可将顺序队列假想成一个环状结构,如下图所示,称之为循环队列。
               
               循环队列的头、尾指针示意图
               设循环队列Q的容量为MAXSIZE,初始时队列为空,且Q.rear和Q.front都等于0,如下图(a)所示。元素入队时修改队尾指针,即令Q.rear=(Q.rear+1)% MAXSIZE,如下图(b)所示。元素出队时修改队头指针,即令Q.front=(Q.front+1)% MAXSIZE,如下图(c)所示。
               
               循环队列的头、尾指针示意图
               根据出队列操作的定义,当出队操作导致队列变为空时,有Q.rear==Q.front,如上图(d)所示;若队列满,则Q.rear==Q.front,如上图(e)所示。在队列空和队列满的情况下,循环队列的队头、队尾指针指向的位置是相同的,此时仅仅根据Q.rear和Q.front之间的关系无法断定队列的状态。为了区分队空和队满的情况,可采用两种处理方式:其一是设置一个标志位,以区别头、尾指针的值相同时队列是空还是满;其二是牺牲一个元素空间,约定以“队列的尾指针所指位置的下一个位置是头指针”表示队列满,如上图(f)所示,而头、尾指针的值相同时表示队列为空。
               设队列中的元素类型为整型,则循环队列的类型定义为:
               
               【函数】创建一个空的循环队列。
               
               【函数】元素入循环队列。
               
               【函数】元素出循环队列。
               
               (2)队列的链式存储。队列的链式存储也称为链队列。为了便于操作,可给链队列添加一个头结点,并令头指针指向头结点,如下图所示。因此,队列为空的判定条件是头指针和尾指针的值相同,且均指向头结点。
               
               链队列示意图
               队列的应用
               队列常用于处理需要排队的场合,如操作系统中处理打印任务的打印队列、离散事件的计算机模拟等。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有