3.1 线性结构

令序列X、Y、Z的每个元素按顺序进栈,且每个元素进栈.出栈各一次,则不可能得到出栈序列( )。
A. XYZ
B. XZY
C. ZXY
D. YZX

正确答案是 C。
解析
ZXY不可能得到这个序列,因为当Z最先出栈,说明X、Y已经入栈,且x比Y先入栈,那么在出栈的时候,X比Y要后出栈,所以当X最先出栈,只能够得到Z、Y、X这样的出栈序列。

函数调用和返回控制是用( )实现的。
A. 哈希表
B. 符号表
C. 栈
D. 优先列队

正确答案是 C。
解析
当有多个函数构成嵌套调用时(如:递归调用),按照“后调用先返回”的原则,函数之间的信息传递和控制转移可以用“栈”来实现。

若某线性表中最常用的操作是在最后一个元素之前插入和删除元素,则采用( )最节省运算时间。
A. 单链表
B. 仅有头指针的单循环链表
C. 仅有尾指针的单循环链表
D. 双链表

正确答案是 D。
解析
链式存储有:单链表(线性链表)、循环链表、双向链表。
单链表从链表的第一个表元开始,将线性表的节点依次存储在链表的各表元中。链表的每个表元除要存储线性表节点信息外,还要一个成分用来存储其后继节点的指针。
循环链表是单链表的变形,其特点是表中最后一个节点的指针域指向头节点,整个链表形成一个环。因此,从表中的任意一个节点出发都可以找到表中的其他节点。循环链表中,从头指针开始遍历的结束条件不是节点的指针是否为空,而是是否等于头指针。为简化操作,循环链表中往往加入表头节点。
双向链表的节点中有两个指针域,其一指向直接后继,另一指向直接前驱,克服了单链表的单向性的缺点。

用某排序方法对一元素序列进行非递减排序时,若该方法可保证在排序前后排序码相同者的相对位置不变,则称该排序方法是稳定的。简单选择排序法排序方法是不稳定的,( )可以说明这个性质。
A. 21 48 21* 63 17
B. 17 21 21* 48 63
C. 63 21 48 21* 17
D. 21* 17 48 63 21

正确答案是 A。
解析
本题考查数据结构基础知识。
对选项A进行简单选择排序时,第一趟需交换17和21,导致21与21*的相对位置发生变化,最后的非递减序列为17 21* 21 48 63,说明简单选择排序是不稳定的排序方法。

对于一个长度为n(n>1)且元素互异的序列,令其所有元素依次通过一个初始为空的栈后,再通过一个初始为空的队列。假设队列和栈的容量都足够大,且只要栈非空就可以进行出栈操作,只要队列非空就可以进行出队操作,那么以下叙述中,正确的是( )。
A. 出队序列和出栈序一定互为逆序
B. 出队序列和出栈序列一定相同
C. 入栈序列与入队序列一定相同
D. 入栈序列与入队序列一定互为逆序

正确答案是 B。
解析
从题目的描述来看,出栈之后,直接入队,然后出队。所以:入队序列=出栈序列,又因为出队序列=入队序列。所以出队序列和出栈序列一定相同。

若元素以a,b,c,d,e的顺序进入一个初始为空的栈中,每个元素进栈、出栈各1次,要求出栈的第一个元素为d,则合法的出栈序列共有( )种。
A. 4
B. 5
C. 6
D. 24

正确答案是 A。
解析
一共5个元素a,b,c,d,e,而d被要求作为第一个元素出栈。当d出栈后的情况应为:
有一个元素e还未入栈,而栈中已有a,b,c。栈中的a,b,c出栈顺序是已无可变性,必须是:c,b,a,此时,只是分析e在什么位置出栈即可。
c,b,a,三个元素,有四个空位,所以可以产生的序列可能为:
(1) d, e, c, b, a
(2) d,c,e,b,a
(3) d, c, b, e, a
(4) d, c, b,a, e

"单选题
以下关于图的遍历的叙述中,正确的是( )。
A. 图的遍历是从给定的源点出发对每一个顶点仅访问一次的过程
B. 图的深度优先遍历方法不适用于无向图
C. 使用队列对图进行广度优先遍历
D. 图中有回路时则无法进行遍历

正确答案是 C。
解析
图的遍历是指,从某一个顶点出发,沿着某条搜索路径对图中的所有顶点进行访问且仅访问一次的过程,所以回路不影响遍历,D选项错误。
这里的访问是沿着某条搜索路径,并不是任意的。A选项错误。
图的深度优先可以用于有向图,也可以用于无向图,B选项错误。
广度优先遍历的特点是尽可能横向搜索,即最先访问的顶点的邻接顶点也先被访问。为此,引入队列来保存,能够先进先出,即当一个顶点被访问后,就将其放入队中,当队头顶点出队时,就访问其未被访问的邻接顶点并让这些顶点入队。队列的特点是先进先出,广度优先刚好合适,C选项正确。

设S是一个长度为n的非空字符串,其中的字符各不相同,则其互异的非平凡子串(非空且不同于S本身)个数为( )。
A. 2n-1
B. n²
C. n(n+1)/2
D. (n+2)(n-1)/2

正确答案是 D。
解析
比如S字符串为“abcdefg”,长度为7,则S中的包含的互不相同的字符串有如下一些:
1.长度为6的个数为2:“abcdef”和“bcdefg”
2.长度为5的个数为3:“abcde”,“bcdef”,“cdefg”
3.长度为1的个数为7:“a”,“b”,“c”,“d”,“e”,“f”,“g”个数总和就是2+3+4+56+7=(2+7)×(7-2+1)/2同理,字符串长度为n,一个字符的字符串个数为n,除原字符串外最长的字符串为n-1个字符,个数有2个,按照推理,共有:2+3+………+n=(2+n)(n-1)/2个。
其中:
等差数列{an}的通项公式为:an=a1+(n-1)d。
前n项和公式为:Sn=n×a1+n(n-1)d/2或Sn=n(a1+an)/2。

栈的特点是后进先出,若用单链表作为栈的存储结构,并用头指针作为栈顶指针,则( )。
A. 入栈和出栈操作都不需要遍历链表
B. 入栈和出栈操作都需要遍历链表
C. 入栈操作需要遍历链表而出栈操作不需要
D. 入栈操作不需要遍历链表而出栈操作需要

正确答案是 A。
解析
本题考查数据结构基础知识。
本题用单链表作为栈的存储结构,因为栈的操作是先进后出,因此无论是入栈还是出栈,都只对栈顶元素操作,而在单链表中用头指针作为栈顶指针,此时无论是出栈还是入栈,都只需要对头指针指向的栈顶指针操作即可,不需要遍历链表。

采用循环队列的优点是( )。
A. 入队和出队可以在队列的同端点进行操作
B. 入队和出队操作都不需要移动队列中的其他元素
C. 避免出现队列满的情况
D. 避免出现队列空的情况

正确答案是 B。
解析
本题考查数据结构循环队列的问题。
1、循环队列的优点:
可以有效的利用资源。用数组实现队列时,如果不移动,随着数据的不断读写,会出现假满队列的情况。即尾数组已满但头数组还是空的;循环队列也是一种数组,只是它在逻辑上把数组的头和尾相连,形成循环队列,当数组尾满的时候,要判断数组头是否为空,不为空继续存放数据。
2、循环队列的缺点:
循环队列中,由于入队时尾指针向前追赶头指针;出队时头指针向前追赶尾指针,造成队空和队满时头尾指针均相等。因此,无法通过条件front==rear来判别队列是“空"是"满”。
3、拓展知识:
为充分利用向量空间,克服“假溢出”现象的方法是:将向量空间想象为一个首尾相接的圆环,并称这种向量为循环向量。存储在其中的队列称为循环队列。
综上所述,C,D都不属于其优点,B选项是循环队列的优点,A是对栈的描述。

以下关于字符串的叙述中,正确的是( )。
A. 包含任意个空格字符的字符串称为空串
B. 字符串不是线性数据结构
C. 字符串的长度是指串中所含字符的个数
D. 字符串的长度是指串中所含非空格字符的个数

正确答案是 C。
解析
空格也是一个字符,所以包含空格的字符串不能称为空串,所以字符串的长度是指字符串所有字符个数的总和(包括空格);字符串是线性结构。

设循环队列Q的定义中有front和size两个域变量,其中front表示队头元素的指针,size表示队列的长度,如下图所示(队列长度为3,队头元素为x,队尾元素为z)。设队列的存储空间容量为M,则队尾元素的指针为( )。
在这里插入图片描述

A. (Q.front+Q.size-1)
B. (Q.front+Q.size-1+M) %M
C. (Q.front-Q.size)
D. (Q.front-Q.size+M) %M

正确答案是 B。
解析
本题考查循环队列队尾指针的计算方法。
从图示可以看出,要得到z的值可进行Q.front+Q.size-1操作,但在此不容忽视的一个问题是,循环队列在进行了多次入队出队操作之后,Q.front+Q.size-1有可能大于M,如Q.front指向M-1空间时,Q.front+Q.size-1=M+1,这已超出队列长度,所以需要让其与M进行求模操作,修正位置号。

某双端队列如下所示,要求元素进出队列必须在同一端口,即从A端进入的元素必须从A端出、从B端进入的元素必须从B端出,则对于4个元素的序列e1、e2、e3、e4,若要求从前2个元素(e1、e2)从A端口按次序全部进入队列,后两个元素(e3、e4)从B端口按次序全部进入队列,则可能得到的出队序列是( )。
在这里插入图片描述

A. e1、 e2、e3、e4
B. e2、e3、 e4、e1
C. e3、e4、 e1、e2
D. e4、e3、e2、e1

正确答案是 D。
解析
e1、e2从A端口进入,e3、e4从B端口进入,如下图所示:
根据题意:从A端进入的元素必须从A端出、从B端进入的元素必须从B端出;则出队顺序中e2在e1前面,e4在e3前面。只有答案D满足。

若一个栈初始为空,其输入序列是1,2,3,…,n-1,n,其输出序列的第一个元素为k(1≤k≤ 「n/2]),则输出序列的最后一个元素是( )。
A. 值为n的元素
B. 值为1的元素
C. 值为n-k的元素
D. 不确定的

正确答案是 D。
解析
本题考查数据结构基础知识。
以n等于4举例说明。输入序列为1234,输出序列的第一个元素可以为1或2。若为1,则输出序列可能为1234、1243、1342、1324、1432;若为2,则输出序列为2134、2143、2314、2341、2431。

对于线性表,相对于顺序存储,采用链表存储的缺点是( )。
A. 数据元素之间的关系需要占用存储空间,导致存储密度不高
B. 表中结点必须占用地址连续的存储单元,存储密度不高
C. 插入新元素时需要遍历整个链表,运算的时间效率不高
D. 删除元素时需要遍历整个链表,运算的时间效率不高

正确答案是 A。
解析
链表最大的优点是没有大小限制不需要提前分配空间也就是说它是动态的。你可以任意添加大小,通过结构体你可以将很多相关的数据放到一起。但是因为链表在内存里存放是不连续的。所以你不能快速的查找和修改。链表存储的缺点为数据元素之间的关系需要占用存储空间,导致存储密度不高。

以下关于线性表存储结构的叙述,正确的是( )。
A. 线性表采用顺序存储结构时,访问表中任意一个指定序号元素的时间复杂度为常量级
B. 线性表采用顺序存储结构时,在表中任意位置插入新元素的运算时间复杂度为常量级
C. 线性表采用链式存储结构时,访问表中任意一个指定序号元素的时间复杂度为常量级
D. 线性表采用链式存储结构时,在表中任意位置插入新元素的运算时间复杂度为常量级

正确答案是 A。
解析
线性表采用顺序存储结构时,访问表中任意一个指定序号元素的时间复杂度为常量级,因为顺序存储结构访问元素时,能直接定位元素,这样,操作的时间复杂度为O(1)。而插入一个元素时,需要将其他的元素位置进行调整,因此任意位置插入新元素的时间复杂度为O(n)。
线性表采用链式存储结构时,访问表中的任意一个指定序号元素时,需要从起始位置,通过指针指向,直到到达指定位置,才能访问该元素,时间复杂度为O(n)。而插入一个新元素时,找到任意位置的时间复杂度为O(n),而插入可以直接通过改变指针指向进行插入,时间复杂度为O(1),因此任意位置插入新元素整个操作的时间复杂度为O(n)。
因此本题只有A选项是正确的。

队列的特点是先进先出,若用循环单链表表示队列,则( )。
A. 入队列和出队列操作都不需要遍历链表
B. 入队列和出队列操作都需要遍历链表
C. 入队列操作需要遍历链表而出队列操作不需要
D. 入队列操作不需要遍历链表而出队列操作需要

正确答案是 A。
解析
本题考查数据结构相关基础知识。
循环单链表中最后一个结点的指针域rear不仅仅是结束标志,还是指向整个链表的第一个结点,从而使链表形成一个环。
对于队列,先进先出,后进后出。
在循环单链表中,出队操作从表头开始删除,也就是rear→next指针直接指向下一个结点,即rear→next=rear→next→next,然后释放原rear→next指向的结点即可,不需要遍历。
在循环单链表中,入队操作从队尾开始插入,新结点s→next指向首元素,然后rear→next指向新的结点s,
最后调整尾指针rear指向新结点s即可,不需要遍历。

设栈S和队列Q的初始状态为空,元素a b c d e f g依次进入栈S。要求每个元素出栈后立即进入队列Q,若7个元素出队列的顺序为b d f e c a g,则栈S的容量最小应该是( )。
A. 5
B. 4
C. 3
D. 2

正确答案是 B。
解析
本题考查数据结构基础知识。
根据队列的特点,元素出队的顺序与入队的顺序相同,因此,可知这7个元素的出栈顺序为b d f e c a g。对于入栈序列abcdefg,得出出栈序列b d f e c a g的操作过程为:push(a入)、push(b入)、pop(b出)、push(c入)、push(d入)、pop(d出)、push(e入)、push(f入)、pop(f出)、pop(e出)、pop(c出)、pop(a出)、push(g入)、pop(g出),如下图所示,从中可知栈S中元素最多时为4。因此,S的容量最小为4。

设栈初始时为空,对于入栈序列1,2,3,….,n,这些元素经过栈之后得到出栈序列p1,p2,p3,…,Pn,若p3=4,则p1,p2不可能的取值为( )。
A. 6,5
B. 2,3
C. 3,1
D. 3,5

正确答案是 C。
解析
采用穷举法。
C选项中,当p1是3的时候,栈中从上到下是2,1。要想1出来,必须2先出来,所以p2不可能是1,所以C错。

设有栈S和队列Q且其初始状态为空,数据元素序列a,b,c,d,e,f依次通过栈S,且每个元素从S出栈后立即进入队列Q,若出队列的序列是b,d,f,e,c,a,则S中的元素最多时,从栈底到栈顶的元素依次为( )。
A. a,b,c
B. a,c,d
C. a,c,e,f
D. a,d,f,e

正确答案是 C。
解析
本题考查的是队列与栈相关知识。
出队序列与入队序列是一致的,出队的序列是b,d,f,e,c,a,即入队序列也为b,d,f,e,c,a。
此时出栈后即入队,即出栈顺序也为b,d,f,e,c,a,元素出栈时,栈内情况依次如下:
栈S中元素最多时,从栈底到栈顶的元素依次为a,c,e,f。本题选择C选项。

设散列函数为H(key)=key%11,对于关键码序列(23,40,91,17,19,10,31,65,26),用线性探查法解决冲突构造的哈希表为( )。
在这里插入图片描述

正确答案是 B。
解析
本题考查的是哈希表的线性探测法。
首先根据关键码序列,分别求取H(Key)=key%11。得到如下所示关键字散列值:
在这里插入图片描述
当关键码65对11取模余10的时候,此时10号位置已经存放了关键码10,因此放到下一个位置,即0号位置。
本题B选项正确。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/53016.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL-进阶篇-锁(全局锁、表级锁、行级锁)

文章目录 1. 锁概述2. 全局锁2.1 介绍2.2 数据备份2.3 使用全局锁造成的问题 3. 表级锁3.1 表锁3.1.1 语法3.1.2 读锁3.1.3 写锁3.1.4 读锁和写锁的区别 3.2 元数据锁(Meta Data Lock,MDL)3.3 意向锁3.3.1 案例引入3.3.2 意向锁的分类 4. 行级…

推荐使用阿贝云免费云服务器、免费虚拟主机

官网地址:https://www.abeiyun.com 阿贝云的免费云服务器简直是我在互联网世界里的一大惊喜发现! 首先,它的性能表现十分出色。服务器的响应速度超快,无论是访问网站还是运行应用,都能迅速给出反馈,几乎没…

蒙特卡罗方法算π

蒙特卡罗法就是在一块区域里撒随机点&#xff0c;看落在指定区域的点数 基于以下关系式&#xff0c;可以计算π&#xff0c;MATLAB代码如下 N10^7; xunifrnd(0,1,[1,N]); yunifrnd(0,1,[1,N]); frequencysum(y<1./(1x.^2)); area4*frequency/N

day-45 全排列 II

思路 与上一题思路相同&#xff0c;代码也基本一致&#xff0c;只是需要全排列不重复 解题过程 可以利用Arrays.sort()函数将nums数组进行排序&#xff0c;这样相同的全排列数字的位置也会相同&#xff0c;可以利用List的contains()函数进行判断&#xff0c;如果不重复则加入答…

Java面试自我介绍

持续更新中 模块序号目录链接前言介绍1前言地址2介绍地址基础知识3计算机网络地址4操作系统地址5Java基础地址6Java并发地址7Java虚拟机地址中间件8Mysql地址9Redis地址10Elasticsearch地址11RabbitMQ地址12RocketMQ地址框架13分布式系统地址14MyBatis地址15Dubbo地址16Spring地…

【fastapi】fastapi的hello world

新建这样的目录结构 main.py的代码如下 from fastapi import FastAPI from fastapi.templating import Jinja2Templatesapp FastAPI()# 初始化 Jinja2 模板引擎 templates Jinja2Templates(directory"templates")app.get("/") async def home():contex…

网站建设完成后, 做seo必须知道的专业知识之--网络爬虫

网络爬虫&#xff0c;也称为网络蜘蛛或网络机器人&#xff0c;是一种能够自动浏览和采集互联网信息的程序。在大数据时代&#xff0c;网络爬虫技术在信息采集领域发挥着重要作用&#xff0c;通过自动化方式高效获取数据&#xff0c;广泛应用于搜索引擎、数据分析、金融数据采集…

海外新闻稿发布:企业如何充分利用数字化媒体进行

在全球数字化进程加速的时代&#xff0c;企业要在激烈的国际市场中脱颖而出&#xff0c;利用数字化媒体进行海外新闻稿发布是一个不可或缺的战略。精确的策略和有效的执行能够帮助企业获得更高的曝光度和市场份额。以下将从多个角度探讨如何充分利用数字化媒体进行海外新闻稿发…

[vue] jszip html-docx-js file-saver 图片,纯文本 ,打包压缩,下载跨域问题

npm install jszip file-saverimport JSZip from jszip; import FileSaver from file-saver;JSZip 创建JSZip实例&#xff1a; const zip new JSZip();创建文件&#xff1a;支持导出纯文本 zip.file("hello.txt", "Hello World\n");创建文件夹&#xf…

pm2 + linux + nginx

pm2 pm2是一个用于管理node项目的工具 前言 有如下两个文件 index.js const express require("express"); const app express(); const port 9999;app.get("/index", (req, res) > {res.json({code:200,msg:"songzx001"}) });app.lis…

Web3常见概念

Layer0 到 Layer3 的对比差异 层级定义主要功能举例Layer0基础设施层 提供区块链底层技术和基础设施 Avalanche、Cosmos、Horizen、PolkadotLayer1区块链层提供主要区块链协议和功能&#xff0c;处理交易和智能合约以太坊、Polkadot、EOSLayer2协议增强层优化交易速度和费用&a…

【单片机原理及应用】实验: 8位数码显示器

目录 一、实验目的 二、实验内容 三、实验步骤 四、记录与处理 五、思考 六、成果文件提取链接 一、实验目的 学习8位数码管串行扩展原理&#xff0c;掌握74HC595与动态显示编程方法。 二、实验内容 【参照图表】 &#xff08;1&#xff09;创建一个包含80C51固件&#x…

【网络】WebSocket协议详解

WebSocket协议详解 一 、WebSocket 诞生背景二、WebSocket 特点三、WebSocket 的握手环节四、WebSokect 的数据格式1、 第一个字节2、第二个字节3、Masking-key4、playload Data5、一些注意细节 WebSocket 的官方文档 WebSocket 的中文文档(非官方) 一 、WebSocket 诞生背景 在…

进阶SpringBoot之 Shiro(2)环境搭建

Spring Boot 创建 Web 项目&#xff0c;pom.xml 导入 Thymeleaf 依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency> resources 目录下 templates 包新…

tomcat 相关

使用内置JDK jdk免配置环境变量&#xff0c;内置tomcat里面启动_64位自带1.8jdk tomcat,无需配置环境变量直接启动-CSDN博客 乱码&#xff1a; 打开tomcat文件下的conf文件&#xff0c;打开logging.properties文件&#xff1b; 然后java.util.logging.ConsoleHandler.encod…

WiFi标签注册(电脑版)

安装WiFi-Tool工具 需要windows系统电脑并且有WiFi功能 下载软件安装包&#xff1a;http://a.picksmart.cn:8088/picksmart/app/WiFi-Tool-Setup-V1.0.37.zip 配置操作流程 登录WiFi标签管理系统到设备管理-产品管理&#xff0c;复制“产品ApiKey”参数&#xff0c;打开“WiFi-…

ip地址变化是什么意思?手机地址ip一直变化怎么办

IP地址作为互联网设备的唯一标识&#xff0c;‌其稳定性对于网络连接至关重要。‌然而&#xff0c;‌手机IP地址频繁变动可能带来一系列问题。‌本文将深入探讨IP地址变化的含义、‌IP地址频繁变动的原因&#xff0c;‌以及提供手机地址IP一直变化的有效应对策略。‌ 一、IP地址…

当AI遇上制药:加速跑向未来的快车道,还是布满荆棘的征途?

01 在全球科技领域&#xff0c;AI的崛起无疑掀起了一场变革的风暴&#xff0c;其影响力已渗透至各行各业&#xff0c;促使各领域积极寻求与AI技术的深度融合&#xff0c;以提升效率、创新产品及优化服务。在医疗健康领域&#xff0c;AI与制药的结合自2007年起航&#xff0c;历…

计网_整体概念逻辑简单过一遍

1. 简述四层TCP/IP 网络模型 由于 OSI 模型实在太复杂&#xff0c;提出的也只是概念理论上的分层&#xff0c;并没有提供具体的实现方案。 事实上&#xff0c;我们比较常见&#xff0c;也比较实用的是四层模型&#xff0c;即 TCP/IP 网络模型&#xff0c; 1.1 应用层 在四…

WPF ToolkitMVVM IOC IServiceConllection

用微软自带的 IOC 需要安装 using Microsoft.Extensions.DependencyInjection; using System.Configuration; using System.Data; using System.Windows;namespace WpfApp3 {/// <summary>/// Interaction logic for App.xaml/// </summary>public partial class…