数据结构

队列的“先进先出”特性是指()。A、最早插入队列中的元素总是最后被删除B、当同时进行插入、删除操作时,总是插入操作优先C、每当有删除操作时,总是要先做一次插入操作D、每次从队列中删除的总是最早插入的元素

题目

队列的“先进先出”特性是指()。

  • A、最早插入队列中的元素总是最后被删除
  • B、当同时进行插入、删除操作时,总是插入操作优先
  • C、每当有删除操作时,总是要先做一次插入操作
  • D、每次从队列中删除的总是最早插入的元素
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

队列操作的原则是( )。

A、先进先出

B、后进先出

C、只能插入

D、只能删除


正确答案:A

第2题:

下列关于线性表、栈和队列的叙述,错误的是

A.线性表是给定的n(n必须大于零)个元素组成的序列

B.线性表允许在表的任何位置进行插入和删除操作

C.栈只允许在一端进行插入和删除操作

D.队列允许在一端进行插入在另一端进行删除


正确答案:A
解析:线性表的插入和删除允许在任何位置进行,所以B选项的说法是正确的;栈的操作只允许在栈顶进行,因此,栈称为先进后出表(FILO,First In Last Out),或“后进先出”表(LIFO,Last In First Out),所以C选项说法也是正确的;队列(queue)是只允许在一端删除,在另一端插入的顺序表,允许删除的一端叫做队头(front),允许插入的一端叫做队尾(rear),因此队列亦称作先进先出 (FIFO, First In First Out)的线性表,或后进后出(LILO, Last In Last Out)的线性表。所以D选项说法也是正确的。

第3题:

队列的“先进先出”特性是指()。

A.最早插入队列中的元素总是最后被删除

B.当同时进行插入、删除操作时,总是插入操作优先

C.每当有删除操作时,总是要先做一次插入操作

D.每次从队列中删除的总是最早插入的元素


正确答案:D

第4题:

队列的插入操作在______进行,删除操作在队头进行。


正确答案:队尾
队尾 解析:队列是先进先出的线性表,队列的插入操作在队尾进行,删除操作在队头进行。

第5题:

下列关于队列的叙述中正确的是

A.只能插入元素,而不能删除元素

B.可以插入元素,也能删除元素

C.插入元素时需要移动队列中所有的元素

D.删除元素时需要移动队列中所有的元素


正确答案:B
解析:队列是一种特殊的线性表,只能在一端插入元素,在另一端删除元素,并且在插入与删除操作时都不需要移动其他元素。

第6题:

如果允许在循环队列的两端都可以进行插入和删除操作。要求: ① 写出循环队列的类型定义; ② 写出“从队尾删除”和“从队头插入”的算法。


参考答案:用一维数组 v[0..M-1]实现循环队列,其中M是队列长度。设队头指针 front和队尾指针rear,约定front指向队头元素的前一位置,rear指向队尾元素。定义front=rear时为队空,(rear+1)%m=front 为队满。约定队头端入队向下标小的方向发展,队尾端入队向下标大的方向发展。
  [算法描述]
  ①
  #define M 队列可能达到的最大长度
  typedef struct
  {elemtp data[M];
  int front,rear;
  }cycqueue;
  ②
  elemtp delqueue ( cycqueue Q)
  //Q是如上定义的循环队列,本算法实现从队尾删除,若删除成功,返回被删除元素,否则给出出错信息。
  {if (Q.front==Q.rear) { cout<<"队列空"<  Q.rear=(Q.rear-1+M)%M; //修改队尾指针。
  return(Q.data[(Q.rear+1+M)%M]); //返回出队元素。
  }//从队尾删除算法结束
  void enqueue (cycqueue Q, elemtp x)
  // Q是顺序存储的循环队列,本算法实现“从队头插入”元素x。
  {if (Q.rear==(Q.front-1+M)%M) { cout<<"队满"<  Q.data[Q.front]=x; //x 入队列
  Q.front=(Q.front-1+M)%M; //修改队头指针。
  }// 结束从队头插入算法。

第7题:

设栈S的初始状态为空,队列Q的初始状态如图所示。

对栈S和队列Q进行下列两步操作: (1)删除Q中的元素,将删除的元素插入S,直至Q为空。 (2)依次将S中的元素插入Q,直至S为空。在上述两步操作后,队列Q的状态是【 】。


正确答案:a4a3a2a1
a4a3a2a1 解析:队列的删除是从队头开始的,所以在执行第一步后,S中的内容及顺序应为a1a2a3a4。但栈的出栈顺序是先进后出,所以出栈/顷序为a4a3a2a1。队列的内容及顷序也与出栈情况一致。

第8题:

线性表、栈和队列都是线性结构,可以性表的______位置插入和删除元素;而对栈只能在______插入和删除元素;对于队列只能在______插入和在______删除元素。


正确答案:任何栈顶队尾队首
任何,栈顶,队尾,队首

第9题:

以下______不是队列的基本操作。

A.从队尾插入一个新元素

B.从队列中删除第i个结点

C.判断一个队列是否为空

D.读取对头元素的值


正确答案:B
解析:队列是一种特殊的线性表。队列的特点是“先进先出”:在队列头删除结点,在队列尾插入结点。因此,选项B不符合队列的基本特点,不是队列的基本操作。

第10题:

下列关于线性表、栈和队列的叙述,错误的是( )。

A)线性表是给定的n(n必须大于零)个元素组成的序列

B)队列允许在其中的任何位置进行插入和删除操作

C)栈只允许在一端进行插入和删除操作

D)队列允许在一端进行插入在另一端进行删除


正确答案:B

更多相关问题