考研数据结构栈和队列408大纲及核心考点总结(1)

637 阅读3分钟

这是我参与8月更文挑战的第3天,活动详情查看:8月更文挑战

考研数据结构栈和队列408大纲及核心考点总结(1)

考纲分析

408与各自命题本章大纲内容基本相同 【考查范围】

  • (一)栈和队列的基本概念
  • (二)栈和队列的顺序存储结构
  • (三)栈和队列的链式存储结构
  • (四)栈和队列的应用

高频考点1 一对出入过程的深入理解

【2017年重庆邮电大学】若栈的输入序列为1, 2, 3,……,n,输出序列的第一个元素为n,则第2个输出的元素为 A. 1 B. n-1 C. n D.都有可能

【2017年杭州电子科技大学】一个栈的输入序列为1, 2, 3,……,n,输出序列的第一个元素为n,则第i个输出的元素为 A.不确定 B. n-i+1 C. i D. n-i 【2013年计算机统考408】一个栈的入栈序列为1,2, 3,…,n,其出栈序列是p1,p2, p3, pn。若p2为 3,则p3可能取值的个数是 A. n-3 B. n-2 C. n-1 D.无法确定

image.png

高频考点2—循环队列

不同题目对于循环队列的定义在细节上有所不同,如果题目没有描述,则一般认为是以下循环队列:

  • 1.初始:rear=front=0;
  • 2.尾进头出,rear永远指向队尾元素的后一位;
  • 3.牺牲一个空间来区分判空和判满。 往往围绕以下几点命题:
  • 一、判空和判满
  • 二、入队和出队
  • 三、队列元素个数
  • 四、front和rear指针的位置判断

image.png

一、判空和判满

【2014年计算机统考408】循环队列放在一维数组A[0…M7]中, end1指向队头元素,end2指向队尾元素的后一个位置。假设队列 两端均可进行入队和出队操作,队列中最多能容纳M-1个元素。 初始时为空。下列判断队空和队满的条件中,正确的是()。

  • A.队空:end1==end2;队满:end1 == (end2+1) mod M
  • B.队空:end1==end2;队满:end2==(end1+1)mod (M-1)
  • C.队空:end2== (end1 +1)mod M;队满:end1 == (end2+1)mod M
  • D.队空:end1==(end2+1)mod M;队满:end2==(end1+1)mod (M-1)

【2019年暨南大学】对于一个循环队列队头、队尾指针分别为f、r,其判空的条件是( ),判满的条件是( )。

image.png

二、入队和出队

【2016年南京邮电大学】循环队列存储在 数组A[0..m],则入队时的操作为()。

  • A. rear= rear+1
  • B.rear= (rear+1) mod (m-1 )
  • C.rear= (rear+1) mod m
  • D. rear= (rear+1) mod (m+1)
三、队列元素个数

【2017年暨南大学】循环队列用数组存 放其元素值,已知其头尾指针分别是front和 rear,则当前队列中的元素个数是()。

  • A. (rear-front+m)%m
  • B. rear-front+1
  • C. rear-front-1
  • D. rear-front

image.png

三、头尾指针的位置判断

image.png