当前位置: 首页 > news >正文

数据结构模拟题[九]

数据结构试卷(九)

一、选择题 (30 分)

1.下列程序段的时间复杂度为( )。

for(i=0 ; i<m ; i++) for(j=0 ; j<t ; j++) c[i][j]=0 ;

for(i=0 ; i<m ; i++) for(j=0 ; j<t ; j++) for(k=0 ; k<n; k++) c[i][j]=c[i][j]+a[i][k]*b[k][j] ;

(A) O(m*n*t) (B) O(m+n+t) (C) O(m+n*t) (D) O(m*t+n)

2.设顺序线性表中有 n 个数据元素,则删除表中第 i 个元素需要移动( )个元素。

(A) n-i (B) n+l -i (C) n-1-i (D) i

3.设 F 是由 T1、T2 和 T3三棵树组成的森林,与 F 对应的二叉树为 B, T1、T2 和 T3 的结点数分别为 N1、

N2 和 N3,则二叉树 B 的根结点的左子树的结点数为( )。

(A) N1-1 (B) N2-1 (C) N2+N3 (D) N1+N3

4.利用直接插入排序法的思想建立一个有序线性表的时间复杂度为( )。

 (A) O(n) (B) O(nlog 2n) (C) O(n 2

) (D) O(1og 2n)

5.设指针变量 p 指向双向链表中结点 A,指针变量 s 指向被插入的结点 X,则在结点 A的后面插入结点 X

的操作序列为( )。

(A) p->right=s ; s->left=p ; p->right->left=s ; s->right=p->right ;

(B) s->left=p ;s->right=p->right ;p->right=s ; p->right->left=s ;

(C) p->right=s ; p->right->left=s ; s->left=p ; s->right=p->right ;

(D) s->left=p ;s->right=p->right ;p->right->left=s ; p->right=s ;

6.下列各种排序算法中平均时间复杂度为 O(n2

) 是( )。

(A) 快速排序 (B) 堆排序 (C) 归并排序 (D) 冒泡排序

7.设输入序列 1、2、3、, 、 n 经过栈作用后,输出序列中的第一个元素是 n,则输出序列中的第 i 个输

出元素是( )。

(A) n-i (B) n-1-i (C) n+l -i (D) 不能确定

8.设散列表中有 m 个存储单元,散列函数 H(key)= key % p ,则 p 最好选择( )。

(A) 小于等于 m的最大奇数 (B) 小于等于 m的最大素数

(C) 小于等于 m的最大偶数 (D) 小于等于 m的最大合数

9.设在一棵度数为 3 的树中,度数为 3 的结点数有 2 个,度数为 2 的结点数有 1 个,度数为 1 的结点数

有 2 个,那么度数为 0 的结点数有( )个。

(A) 4 (B) 5 (C) 6 (D) 7

10. 设完全无向图中有 n 个顶点,则该完全无向图中有( )条边。

 (A) n(n-1)/2 (B) n(n-1) (C) n(n+1)/2 (D) (n-1)/2

11. 设顺序表的长度为 n,则顺序查找的平均比较次数为( )。

(A) n (B) n/2 (C) (n+1)/2 (D) (n-1)/2

12. 设有序表中的元素为 (13 ,18,24,35, 47,50,62) ,则在其中利用二分法查找值为 24 的元素需要经

过( )次比较。

(A) 1 (B) 2 (C) 3 (D) 4

13. 设顺序线性表的长度为 30,分成 5 块,每块 6 个元素, 如果采用分块查找, 则其平均查找长度为 ( )。

(A) 6 (B) 11 (C) 5 (D) 6.5

14. 设有向无环图 G中的有向边集合 E={<1 ,2>,<2,3>,<3,4>,<1,4>} ,则下列属于该有向图 G的一

种拓扑排序序列的是( )。

(A) 1 ,2,3,4 (B) 2 ,3,4, 1 (C) 1 , 4,2,3 (D) 1 ,2,4,3 

15. 设有一组初始记录关键字序列为 (34, 76,45,18, 26, 54,92) ,则由这组记录关键字生成的二叉排

序树的深度为( )。

(A) 4 (B) 5 (C) 6 (D) 7

二、填空题 (30 分)

1. 设指针 p 指向单链表中结点 A,指针 s 指向被插入的结点 X,则在结点 A的前面插入结点 X时的操作

序列为:

1) s->next=___________ ;2) p->next=s ;3) t=p->data ;

4) p->data=___________ ;5) s->data=t ;

2. 设某棵完全二叉树中有 100 个结点,则该二叉树中有 ______________个叶子结点。

3. 设某顺序循环队列中有 m个元素,且规定队头指针 F 指向队头元素的前一个位置,队尾指针 R 指向

队尾元素的当前位置,则该循环队列中最多存储 _______队列元素。

4. 对一组初始关键字序列( 40, 50,95,20, 15,70,60, 45,10)进行冒泡排序,则第一趟需要进

行相邻记录的比较的次数为 __________,在整个排序过程中最多需要进行 __________趟排序才可以

完成。

5. 在堆排序和快速排序中,如果从平均情况下排序的速度最快的角度来考虑应最好选择 _________排

序,如果从节省存储空间的角度来考虑则最好选择 ________排序。

6. 设一组初始记录关键字序列为 (20 , 12,42,31,18,14,28) ,则根据这些记录关键字构造的二叉

排序树的平均查找长度是 _______________________________ 。

7. 设一棵二叉树的中序遍历序列为 BDCA,后序遍历序列为 DBAC,则这棵二叉树的前序序列为

____________________。

8. 设用于通信的电文仅由 8 个字母组成,字母在电文中出现的频率分别为 7、19、2、6、32、3、21、

10,根据这些频率作为权值构造哈夫曼树,则这棵哈夫曼树的高度为 ________________。

9. 设一组记录关键字序列为 (80 ,70,33,65,24,56,48),则用筛选法建成

的初始堆为 _______________________。

10. 设 无 向 图 G( 如 右 图 所 示 ), 则 其 最 小 生 成 树 上 所 有 边 的 权 值 之 和 为

_________________。

三、判断题 (20 分)

1. 有向图的邻接表和逆邻接表中表结点的个数不一定相等。 ( )

2. 对链表进行插入和删除操作时不必移动链表中结点。 ( )

3. 子串“ ABC”在主串“ AABCABCD”中的位置为 2。( )

4. 若一个叶子结点是某二叉树的中序遍历序列的最后一个结点,则它必是该二叉树的先序遍历序列中的

最后一个结点。 ( )

5. 希尔排序算法的时间复杂度为 O(n2

) 。( )

6. 用邻接矩阵作为图的存储结构时,则其所占用的存储空间与图中顶点数无关而与图中边数有关。 ( )

7. 中序遍历一棵二叉排序树可以得到一个有序的序列。 ( )

8. 入栈操作和入队列操作在链式存储结构上实现时不需要考虑栈溢出的情况。 ( )

9. 顺序表查找指的是在顺序存储结构上进行查找。 ( )

10.堆是完全二叉树,完全二叉树不一定是堆。 ( )

五、算法设计题 (20 分)

1. 设计计算二叉树中所有结点值之和的算法。

2. 设计将所有奇数移到所有偶数之前的算法。

3. 设计判断单链表中元素是否是递增的算法。

一、选择题

1.A 2.A 3.A 4.C 5.D

6.D 7.C 8.B 9.C 10.A

11.C 12. C 13.D 14.A 15.A

二、填空题

1. p->next ,s->data

2. 50

3. m-1

4. 6,8

5. 快速,堆

6. 19/7

7. CBDA

8. 6

9. (24,65,33,80, 70,56,48)

10. 8

三、判断题

1.错 2.对 3.对 4.对 5.错

6.错 7.对 8.对 9.错 10.对

四、算法设计题

1. 设计计算二叉树中所有结点值之和的算法。

void sum(bitree *bt,int &s)

{

if(bt!=0) {s=s+bt->data; sum(bt->lchild,s); sum(bt->rchild,s);}

}

2. 设计将所有奇数移到所有偶数之前的算法。

void quickpass(int r[], int s, int t)

{

int i=s,j=t,x=r[s];

while(i<j)

{

while (i<j && r[j]%2==0) j=j-1; if (i<j) {r[i]=r[j];i=i+1;}

while (i<j && r[i]%2==1) i=i+1; if (i<j) {r[j]=r[i];j=j-1;}

}

r[i]=x;

}

3. 设计判断单链表中元素是否是递增的算法。

int isriselk(lklist *head)

{

if(head==0||head->next==0) return(1);else

for(q=head,p=head->next; p!=0; q=p,p=p->next)if(q->data>p->data) return(0);

return(1);

相关文章:

数据结构模拟题[九]

数据结构试卷&#xff08;九&#xff09; 一、选择题 (30 分) 1&#xff0e;下列程序段的时间复杂度为&#xff08; &#xff09;。 for(i0 &#xff1b; i<m &#xff1b; i) for(j0 &#xff1b; j<t &#xff1b; j) c[i][j]0 &#xff1b; for(i0 &#xff1b; i…...

2024年10月国产数据库大事记-墨天轮

本文为墨天轮社区整理的2024年10月国产数据库大事件和重要产品发布消息。 目录 2024年10月国产数据库大事记 TOP102024年10月国产数据库大事记&#xff08;时间线&#xff09;产品/版本发布代表厂商大事记信创数据库上市公司2024年Q3财报 达梦数据&#xff1a;2024年前三季度…...

Andon 业务流程业务开发陷阱----从真实用户与管理者视角逻辑差异

Q : Andon 问题识别归类(就是问题的3层细化)&#xff0c;是在事中&#xff0c;还是在事后? A : 不存在事中就细化归类&#xff0c;有悖于生产问题解决流程。 从操作员的角度来看&#xff0c;他们在事中可能只能识别出存在质量问题&#xff0c;但无法进行具体的质量问题编号…...

Python闭包|你应该知道的常见用例(上)

引言 在 Python 编程语言中&#xff0c;闭包通常指的是一个嵌套函数&#xff0c;即在一个函数内部定义的另一个函数。这个嵌套的函数能够访问并保留其外部函数作用域中的变量。这种结构就构成了一个闭包。 闭包在函数式编程语言中非常普遍。在 Python 中&#xff0c;闭包特别有…...

printf影响单片机中断速度

printf是我们常用的调试程序的手段&#xff0c;在第一版程序中&#xff0c;经常会使用printf来验证程序是否工作正确。这样的调试手段应该在正式版的程序发布前注释掉或者删除。而且不当地使用printf也会带来某些功能性问题&#xff0c;例如&#xff0c;在某项目中&#xff0c;…...

JavaScript 23种经典设计模式简介

23种JavaScript经典设计模式 JavaScript经典设计模式 通过之前的学习&#xff0c;我们知道设计模式是一种解决代码组织、代码复用和代码可维护性等问题的技术方法。它通过将代码以特定的方式组织起来&#xff0c;使代码结构更加清晰、可读性更高、易于维护和扩展。为了在开发…...

位运算相关算法

一、异或运算介绍 1、性质介绍 异或运算&#xff08;XOR&#xff0c;Exclusive OR&#xff09;是一种位运算符。对于两个位进行异或操作&#xff0c;当且仅当这两个位不同时&#xff0c;结果为 1&#xff1b;如果相同&#xff0c;则结果为 0。 A B A^B00001 1 101110 任何数…...

解决:无法在此设备上激活Windows因为无法连接到你的组织的激活服务器

问题&#xff1a; 桌面右下角会出现这个东西&#x1f447; 在设置里查看激活状态就会看到&#x1f447; 解决方法 &#xff1a; 1.打开CMD 搜索CMD&#xff0c;然后以管理员身份运行 2.设置 KMS服务器 1&#xff09;命令行输入&#xff1a; slmgr /skms kms.03k.org 然后…...

【Spring】——SpringBoot项目创建

阿华代码&#xff0c;不是逆风&#xff0c;就是我疯 你们的点赞收藏是我前进最大的动力&#xff01;&#xff01; 希望本文内容能够帮助到你&#xff01;&#xff01; 目录 引入 一&#xff1a;介绍 二&#xff1a;Spring Boot项目创建 0&#xff1a;项目目录 1&#xff1a…...

聊一聊:ChatGPT搜索引擎会取代谷歌和百度吗?

当地时间 10 月 31 日&#xff0c;OpenAI 正式推出了 ChatGPT 搜索功能&#xff0c;能实时、快速获取附带相关网页来源链接的答案。这一重大升级标志着其正式向谷歌的搜索引擎霸主地位发起挑战。 本周五我们聊一聊&#xff1a; 欢迎在评论区畅所欲言&#xff0c;分享你的观点~ …...

分布式中常见的问题及其解决办法

分布式中常见的问题及其解决办法 一、多个微服务要操作同一个存储在redis中的变量&#xff0c;如何确保这个变量的正确性 答&#xff1a; 在多个微服务操作同一个存储在Redis中的变量时&#xff0c;可以采取以下措施来确保变量的正确性&#xff1a; 1、使用Redis的事务&…...

HTML 基础标签——多媒体标签<img>、<object> 与 <embed>

文章目录 1. `<img>` 标签主要属性示例注意事项2. `<object>` 标签概述主要属性示例注意事项3. `<embed>` 标签概述主要属性示例注意事项小结在现代网页设计中,多媒体内容的使用变得越来越重要,因为它能够有效增强用户体验、吸引注意力并传达信息。HTML 提…...

word mathml 创建粗体字母快捷键

在 mathml 中达到latex中 \mathbf{A} 的效果 由于word本身不支持这个命令&#xff0c;所以打算用快捷键实现 快捷键的功能是加粗光标前一个字目 1. Alt F8 打开宏&#xff0c;如果打不开可以尝试 Alt Fn F8 2. 输入 BoldPreviousCharacter 新建宏&#xff1a; Sub Bold…...

ROOT添加用户提示权限不够

有个系统已经上线过了&#xff0c;之后测评整改要求不能用root启动中间件&#xff0c;我就想着添加一个普通用户&#xff0c;赋予指定目录权限&#xff0c;然后启动应用就行了 。 结果用root用户创建账号提示权限不够&#xff0c;确认了几遍&#xff0c;是root 命令前面加sud…...

关于使用svgIcon 菜单折叠 显示文字情况

使用的工具&#xff1a;vue2&#xff0c;ant design vue 问题&#xff1a; **解决&#xff1a;在<svg-icon> 外面包一层 <a-icon> ** 使用: 在 main.js 中&#xff1a;...

Python使用PDF相关组件案例详解

主要对pdfminer.six、pdfplumber、PyMuPDF、PyPDF2、PyPDF4、pdf2image、camelot-py七个PDF相关组件分别详解&#xff0c;具体使用案例演示 1. pdfminer.six pdfminer.six 是一个专门用来从 PDF 中提取文本的库&#xff0c;能够处理复杂的文本布局&#xff0c;适合用于文本解析…...

day53 图论章节刷题Part05(并查集理论基础、寻找存在的路径)

并查集理论基础 基础内容 并查集常用来解决连通性问题&#xff0c;主要有两个功能&#xff1a; 将两个元素添加到一个集合中判断两个元素在不在同一个集合 将三个元素A&#xff0c;B&#xff0c;C &#xff08;分别是数字&#xff09;放在同一个集合&#xff0c;其实就是将…...

鸿蒙next选择 Flutter 开发跨平台应用的原因

在移动操作系统的竞争中&#xff0c;鸿蒙&#xff08;HarmonyOS&#xff09;自从发布以来便吸引了广泛的关注。作为华为主导的操作系统&#xff0c;鸿蒙的设计初衷是打破平台壁垒&#xff0c;实现设备间的无缝连接与应用共享。然而&#xff0c;要实现这一目标&#xff0c;仅仅依…...

shodan6-7---清风

shodan6-7 1.shodan网页版 以cve-2019-0708漏洞指纹特征为例 "\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"在这里插入图片描述 搜索命令参考 https://www.shodan.io/search/filters这个网页中有搜索关键词 对指定网址进行监控&#xff0c;这里可以对ip进行扫描&…...

FTP、ISCSI、CHRONY、DNS、NFS、DOCKER、MARIADB、NGINX、PHP、CA各服务开启方法

2.1 FTP 服务 (vsftpd) 安装 vsftpd&#xff1a; sudo yum install vsftpd -y 启动并设置开机自启&#xff1a; sudo systemctl start vsftpdsudo systemctl enable vsftpd 配置文件位于 /etc/vsftpd/vsftpd.conf&#xff0c;可根据需要修改配置。 2.2 SCSI 服务 SCSI 配…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

【项目实战】通过多模态+LangGraph实现PPT生成助手

PPT自动生成系统 基于LangGraph的PPT自动生成系统&#xff0c;可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析&#xff1a;自动解析Markdown文档结构PPT模板分析&#xff1a;分析PPT模板的布局和风格智能布局决策&#xff1a;匹配内容与合适的PPT布局自动…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向&#xff0c;可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

基于SpringBoot在线拍卖系统的设计和实现

摘 要 随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统&#xff0c;主要的模块包括管理员&#xff1b;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

Python 实现 Web 静态服务器(HTTP 协议)

目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1&#xff09;下载安装包2&#xff09;配置环境变量3&#xff09;安装镜像4&#xff09;node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1&#xff09;使用 http-server2&#xff09;详解 …...

FFmpeg avformat_open_input函数分析

函数内部的总体流程如下&#xff1a; avformat_open_input 精简后的代码如下&#xff1a; int avformat_open_input(AVFormatContext **ps, const char *filename,ff_const59 AVInputFormat *fmt, AVDictionary **options) {AVFormatContext *s *ps;int i, ret 0;AVDictio…...

基于开源AI智能名片链动2 + 1模式S2B2C商城小程序的沉浸式体验营销研究

摘要&#xff1a;在消费市场竞争日益激烈的当下&#xff0c;传统体验营销方式存在诸多局限。本文聚焦开源AI智能名片链动2 1模式S2B2C商城小程序&#xff0c;探讨其在沉浸式体验营销中的应用。通过对比传统品鉴、工厂参观等初级体验方式&#xff0c;分析沉浸式体验的优势与价值…...

英国云服务器上安装宝塔面板(BT Panel)

在英国云服务器上安装宝塔面板&#xff08;BT Panel&#xff09; 是完全可行的&#xff0c;尤其适合需要远程管理Linux服务器、快速部署网站、数据库、FTP、SSL证书等服务的用户。宝塔面板以其可视化操作界面和强大的功能广受国内用户欢迎&#xff0c;虽然官方主要面向中国大陆…...

20250607在荣品的PRO-RK3566开发板的Android13系统下实现长按开机之后出现插入适配器不会自动启动的问题的解决

20250607在荣品的PRO-RK3566开发板的Android13系统下实现长按开机之后出现插入适配器不会自动启动的问题的解决 2025/6/7 17:20 缘起&#xff1a; 1、根据RK809的DATASHEET&#xff0c;短按开机【100ms/500ms】/长按关机&#xff0c;长按关机。6s/8s/10s 我在网上找到的DATASHE…...