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

数据结构模拟题[十]

数据结构试卷(十)

一、选择题 (24 分)

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

i=0 ,s=0; while (s<n) {s=s+i ;i++ ;}

(A) O(n 1/2 ) (B) O(n 1/3 ) (C) O(n) (D) O(n 2

)

2.设某链表中最常用的操作是在链表的尾部插入或删除元素,则选用下列( )存储方式最节省运算时

间。

(A) 单向链表 (B) 单向循环链表

(C) 双向链表 (D) 双向循环链表

3.设指针 q 指向单链表中结点 A,指针 p 指向单链表中结点 A 的后继结点 B,指针 s 指向被插入的结点 X,

则在结点 A 和结点 B 插入结点 X的操作序列为( )。

(A) s->next=p->next ;p->next=-s ; (B) q->next=s ; s->next=p ;

(C) p->next=s->next ;s->next=p ; (D) p->next=s ;s->next=q ;

4.设输入序列为 1、2、3、4、 5、6,则通过栈的作用后可以得到的输出序列为( )。

(A) 5 ,3,4,6, 1,2 (B) 3 ,2,5,6,4,1

(C) 3 ,1,2,5, 4,6 (D) 1 ,5,4,6,2,3

5.设有一个 10 阶的下三角矩阵 A(包括对角线) ,按照从上到下、从左到右的顺序存储到连续的 55 个存

储单元中,每个数组元素占 1 个字节的存储空间,则 A[5][4] 地址与 A[0][0] 的地址之差为( )。

(A) 10 (B) 19 (C) 28 (D) 55

6.设一棵 m叉树中有 N1个度数为 1 的结点, N2个度数为 2 的结点, ,, , Nm个度数为 m的结点,则该树

中共有( )个叶子结点。

(A)

m

i

Ni

i

1

)1( (B)

m

i

Ni

1

(C)

m

i

Ni

2

(D)

m

i

Ni

i

2

)1(1

7. 二叉排序树中左子树上所有结点的值均( )根结点的值。

(A) < (B) > (C) = (D) !=

8. 设一组权值集合 W=(15,3,14,2,6,9,16,17) ,要求根据这些权值集合构造一棵哈夫曼树,则这

棵哈夫曼树的带权路径长度为( )。

(A) 129 (B) 219 (C) 189 (D) 229

9. 设有 n 个关键字具有相同的 Hash 函数值,则用线性探测法把这 n 个关键字映射到 HASH表中需要做( )

次线性探测。

(A) n 2

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

10. 设某棵二叉树中只有度数为 0 和度数为 2 的结点且度数为 0 的结点数为 n,则这棵二叉中共有 ( )个

结点。

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

11. 设一组初始记录关键字的长度为 8,则最多经过( )趟插入排序可以得到有序序列。

(A) 6 (B) 7 (C) 8 (D) 9

12. 设一组初始记录关键字序列为 (Q,H,C,Y ,P,A,M ,S,R,D,F,X) ,则按字母升序的第一趟冒

泡排序结束后的结果是( )。

(A) F,H,C,D,P, A, M ,Q,R,S,Y,X

(B) P,A,C,S, Q, D, F,X,R,H,M ,Y

(C) A ,D,C,R,F,Q,M ,S,Y,P,H,X 

(D) H,C,Q,P,A,M ,S,R,D,F,X,Y

二、填空题 (48 分,其中最后两小题各 6 分)

1. 设需要对 5 个不同的记录关键字进行排序,则至少需要比较 _____________ 次,至多需要比较

_____________次。

2. 快 速 排 序 算 法 的 平 均 时 间 复 杂 度 为 ____________ , 直 接 插 入 排 序 算 法 的 平 均 时 间 复 杂 度 为

___________。

3. 设二叉排序树的高度为 h,则在该树中查找关键字 key 最多需要比较 _________次。

4. 设在长度为 20 的有序表中进行二分查找,则比较一次查找成功的结点数有 _________个,比较两次查

找成功有结点数有 _________个。

5. 设一棵 m叉树脂的结点数为 n,用多重链表表示其存储结构,则该树中有 _________个空指针域。

6. 设指针变量 p 指向单链表中结点 A,则删除结点 A的语句序列为:

q=p->next ;p->data= q->data ;p->next=___________ ;feee(q) ;

7. 数据结构从逻辑上划分为三种基本类型: ___________、__________和___________。

8. 设无向图 G中有 n 个顶点 e 条边,则用邻接矩阵作为图的存储结构进行深度优先或广度优先遍历时的

时间复杂度为 _________;用邻接表作为图的存储结构进行深度优先或广度优先遍历的时间复杂度为

_________。

9. 设散列表的长度为 8,散列函数 H(k)=k % 7,用线性探测法解决冲突,则根据一组初始关键字序列 (8 ,

15,16, 22,30,32) 构造出的散列表的平均查找长度是 ________。

10. 设一组初始关键字序列为 (38 , 65, 97, 76, 13, 27, 10) ,则第 3 趟冒泡排序结束后的结果为

_____________________。

11. 设一组初始关键字序列为 (38 , 65, 97, 76, 13, 27, 10) ,则第 3 趟简单选择排序后的结果为

______________________ 。

12. 设有向图 G中的有向边的集合 E={<1,2>,<2,3>,<1,4>,<4,5>,<5,3>,<4,6>,<6,5>} ,则

该图的一个拓扑序列为 _________________________ 。

13. 下面程序段的功能是建立二叉树的算法,请在下划线处填上正确的内容。

typedef struct node{int data;struct node *lchild;________________;}bitree;

void createbitree(bitree *&bt)

{

scanf(“ %c” ,&ch);

if(ch=='#') ___________;else

{ bt=(bitree*)malloc(sizeof(bitree)); bt->data=ch; ________;createbitree(bt->rchild);}

}

14. 下面程序段的功能是利用从尾部插入的方法建立单链表的算法,请在下划线处填上正确的内容。

typedef struct node {int data; struct node *next;} lklist;

void lklistcreate(_____________ *&head )

{

for (i=1;i<=n;i++)

{

p=(lklist *)malloc( sizeof(lklist));scanf( “->data));p->next=0; %d” ,&(p

if(i==1)head=q=p;else {q->next=p;____________;}

}

}

三、算法设计题 (22 分)

1. 设计在链式存储结构上合并排序的算法。

2. 设计在二叉排序树上查找结点 X的算法。

3. 设关键字序列 (k 1, k2,, , kn-1 ) 是堆,设计算法将关键字序列 (k 1,k 2,, , kn-1,x) 调整为堆。

一、选择题

1.A 2.D 3.B 4.B 5.B 6.D

7.A 8.D 9.D 10.C 11.B 12.D

二、填空题

1. 4,10

2. O(nlog2n),O(n2

)

3. n

4. 1,2

5. n(m-1)+1

6. q->next

7. 线性结构,树型结构,图型结构

8. O(n2

), O(n+e)

9. 8/3

10. (38,13,27,10, 65,76,97)

11. (10,13,27,76, 65,97,38)

12. 124653

13. struct node *rchild ,bt=0,createbitree(bt->lchild)

14. lklist ,q=p

三、算法设计题

1. 设计在链式存储结构上合并排序的算法。

void mergelklist(lklist *ha,lklist *hb,lklist *&hc)

{

lklist *s=hc=0;

while(ha!=0 && hb!=0)

if(ha->data<hb->data){if(s==0) hc=s=ha; else {s->next=ha; s=ha;};ha=ha->next;}

else {if(s==0) hc=s=hb; else {s->next=hb; s=hb;};hb=hb->next;}

if(ha==0) s->next=hb; else s->next=ha;

}

2. 设计在二叉排序树上查找结点 X的算法。

bitree *bstsearch1(bitree *t, int key)

{

bitree *p=t;

while(p!=0) if (p->key==key) return(p);else if (p->key>key)p=p->lchild; else p=p->rchild;

return(0);

}

3. 设关键字序列 (k 1, k2,, , kn-1 ) 是堆,设计算法将关键字序列 (k 1,k 2,, , kn-1,x) 调整为堆。

void adjustheap(int r[ ],int n)

{

int j=n,i=j/2,temp=r[j-1];

while (i>=1) if (temp>=r[i-1])break; else{r[j-1]=r[i-1]; j=i; i=i/2;}

r[j-1]=temp;

相关文章:

数据结构模拟题[十]

数据结构试卷&#xff08;十&#xff09; 一、选择题 (24 分) 1&#xff0e;下列程序段的时间复杂度为&#xff08; &#xff09;。 i0 &#xff0c;s0&#xff1b; while (s<n) {ssi &#xff1b;i &#xff1b;} (A) O(n 1/2 ) (B) O(n 1/3 ) (C) O(n) (D) O(n 2 ) …...

Java基于微信小程序的美食推荐系统(附源码,文档)

博主介绍&#xff1a;✌程序猿徐师兄、8年大厂程序员经历。全网粉丝15w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…...

基于CNN-RNN的影像报告生成

项目源码获取方式见文章末尾&#xff01; 600多个深度学习项目资料&#xff0c;快来加入社群一起学习吧。 《------往期经典推荐------》 项目名称 1.【PaddleNLP的FAQ问答机器人】 2.【卫星图像道路检测DeepLabV3Plus模型】 3.【GAN模型实现二次元头像生成】 4.【CNN模型实现…...

MacOS如何读取磁盘原始的扇区内容,恢复误删除的数据

MacOS 也是把磁盘当成一个文件&#xff0c;也是可以使用 dd来读取&#xff0c;命行令行如下&#xff1a; sudo dd if/dev/disk2 bs512 count1 skip100 ofsector_100.bin 这个就是读取 /dev/disk2这个磁盘每100这个sector, bs表示扇区大小是512. 但是你直接用读&#xff0c;应…...

创客匠人:打造IP陷入迷茫?20位大咖直播如何破局,实现财富增长

就在明天&#xff01; 11月4日-8日&#xff0c;全球创始人IP领袖峰会线上启动会——《2025年知识IP创新增长训练营*20位各界大咖标杆集体赋能》直播活动&#xff0c;即将重磅来袭&#xff01; 20位行业大咖5大篇章主题内容的强大组合&#xff0c;将为你逐一精彩呈现&#xff…...

视觉目标检测标注xml格式文件解析可视化 - python 实现

视觉目标检测任务&#xff0c;通常用 labelimage标注&#xff0c;对应的标注文件为xml。 该示例来源于开源项目&#xff1a;https://gitcode.com/DataBall/DataBall-detections-100s/overview 读取 xml 标注文件&#xff0c;并进行可视化示例如下&#xff1a; #-*-coding:ut…...

clion远程配置docker ros2

CLION与docker中的ROS2环境构建远程连接 设备前提开启SSH服务CLION配置CLION配置CLION IDE远程连接过程实现CLION SSH 远程部署 开启fastlio2debug之旅 设备前提 本地宿主机&#xff1a;UBUNTU 20.04 docker container:ros2_container (内置环境ROS2 humble) 通过之前的tcp连接…...

微信小程序 uniapp 腾讯地图的调用

/* 提前在您的app.json上加上这些代码 "permission": { "scope.userLocation": { "desc": "你的位置信息将用于地图中定位" } …...

OLAP平台架构演化历程

OLAP平台架构演化历程 0 导读 随着大数据的持续发展及数字化转型的兴起&#xff0c;大数据OLAP分析需求越来越迫切&#xff0c;不论是大型互联网企业&#xff0c;还是中小型传统企业&#xff0c;都在积极探索及实践OLAP引擎选型及平台架构建设&#xff0c;大数据技术的蓬勃发展…...

OmniGen: Unified Image Generation(代码的复现)

文章目录 论文简介模型的部署需要下载的预训练权重 模型的生成效果图像编辑的效果风格迁移的效果 总结 论文简介 OmniGen的github项目地址 OmniGen: Unified Image Generation。OmniGen 在各种图像生成任务中都表现出了卓越的性能&#xff0c;并可能大大超过现有扩散模型的极…...

keepalive+mysql8双主

1.概述 利用keepalived实现Mysql数据库的高可用&#xff0c;KeepalivedMysql双主来实现MYSQL-HA&#xff0c;我们必须保证两台Mysql数据库的数据完全一致&#xff0c;实现方法是两台Mysql互为主从关系&#xff0c;通过keepalived配置VIP&#xff0c;实现当其中的一台Mysql数据库…...

C#-基础构造函数、析构函数

一&#xff1a;基础的构造函数 实例化对象时 调用的函数&#xff0c;主要是用来初始化成员变量的。 在构造函数时&#xff0c;对象的初始化是自动完成的&#xff0c;为默认值&#xff0c;但为满足一些特殊数据的初始化操作。可不使用系统默认给的构造函数 基本语法&#xff…...

Ubuntu删除docker

文章目录 安装依赖1.安装操作系统&#xff1a;2.CPU支持 安装docker1.查看系统版本2.执行卸载 安装依赖 1.安装操作系统&#xff1a; 高于 Ubuntu 20.04(LTS) 版本 2.CPU支持 ARM和X86_64 安装docker 1.查看系统版本 cat /etc/*releas*uname -a2.执行卸载 检查本地dock…...

系统地介绍Qt的QtConcurrent模块

本文使用了AI生成的内容&#xff0c;请注意甄别&#xff01; 本文系统地介绍Qt的QtConcurrent模块&#xff0c;它允许开发者无需使用低级线程原语&#xff08;如互斥锁、读写锁、等待条件或信号量&#xff09;即可编写多线程程序。下面将由浅入深地逐步介绍这一内容&#xff1a…...

【进阶sql】复杂sql收集及解析【mysql】

开发时会出现&#xff0c;必须写一些较复杂sql的场景 可能是给会sql的客户 提供一些统计sql 或是临时需要统计数据信息但是 开发一个统计功能有来不及的情况 也可能是报表系统组件 只支持 sql统计的情况 特地记录下这些sql 作为积累 substring 截取查询出的字符串&#xff…...

达梦检查工具dmdbchk的性能

摘要&#xff1a; 本文介绍了dmdbchk的基础使用&#xff0c;例如检查信号量&#xff0c;其性能大约是10GB/分钟&#xff0c;新版本的会更快。 当数据库出问题时&#xff0c;可能会考虑用dmdbchk工具检查数据文件和库内部是否出现异常。对于450G的库会耗时多久&#xff1f; 答&…...

Docker是什么

docker是什么 docker本质docker和虚拟机的区别docker架构Docker Registry镜像仓库分类镜像仓库工作机制docker Hub docker本质 Docker 本质其实是 LXC 之类的增强版&#xff0c;它本身不是容器&#xff0c;而是容器的易用工具。容 器是 linux 内核中的技术&#xff0c;Docker 只…...

Vue进阶指南:Watch 和 Computed 的深度理解

前言 在 Vue.js 开发中&#xff0c;我们常常会用到 watch 和 computed。虽然它们都能用来监听和处理数据的变化&#xff0c;但在使用场景和性能上有显著的区别。本篇文章会通过通俗易懂的方式给你讲解 Vue.js 中 watch 和 computed 的区别和使用方法。 基本概念 Computed&am…...

51c大模型~合集12

我自己的原文哦~ https://blog.51cto.com/whaosoft/11564858 #ProCo 无限contrastive pairs的长尾对比学习 , 个人主页&#xff1a;https://andy-du20.github.io 本文介绍清华大学的一篇关于长尾视觉识别的论文: Probabilistic Contrastive Learning for Long-Tailed Visua…...

大模型 RAG 面试真题大全

最近这一两周不少互联网公司都已经开始秋招提前批面试了。 不同以往的是&#xff0c;当前职场环境已不再是那个双向奔赴时代了。求职者在变多&#xff0c;HC 在变少&#xff0c;岗位要求还更高了。 最近&#xff0c;我们又陆续整理了很多大厂的面试题&#xff0c;帮助一些球友…...

用Python的igraph和leidenalg搞定知识图谱布局:一个科研领域的可视化实战

科研知识图谱实战&#xff1a;用PythonLeiden算法揭示学科交叉规律 当你在文献海洋中寻找研究方向时&#xff0c;是否曾被复杂的学科交叉关系困扰&#xff1f;传统的关键词共现分析已经不能满足现代科研的需求。本文将带你用Python的igraph和leidenalg构建一个能自动识别学科社…...

Kazumi:跨平台动漫资源整合解决方案,打造个性化追番体验

Kazumi&#xff1a;跨平台动漫资源整合解决方案&#xff0c;打造个性化追番体验 【免费下载链接】Kazumi 基于自定义规则的番剧采集APP&#xff0c;支持流媒体在线观看&#xff0c;支持弹幕。 项目地址: https://gitcode.com/gh_mirrors/ka/Kazumi 动漫爱好者常面临三大…...

OFA模型在零售行业的视觉问答应用案例

OFA模型在零售行业的视觉问答应用案例 1. 引言 走进任何一家现代零售商店&#xff0c;你都会看到成千上万的商品整齐地陈列在货架上。但对于店员来说&#xff0c;要快速准确地回答"这个品牌的洗发水有没有无硅油版本&#xff1f;"或者"这款饼干是否含有坚果成…...

手把手教你用Arm Cortex-A715手册:从RAS到调试,一份给芯片设计者的实战笔记

Cortex-A715实战指南&#xff1a;芯片设计者的RAS与调试技术精要 在当今高性能计算领域&#xff0c;Arm Cortex-A715处理器核心凭借其卓越的能效比和性能表现&#xff0c;已成为众多芯片设计项目的首选。本文将从工程实践角度&#xff0c;深入剖析Cortex-A715的两个关键子系统&…...

强化学习实战:Sarsa vs Q-learning,on-policy和off-policy到底怎么选?

强化学习实战&#xff1a;Sarsa与Q-learning的深度对比与策略选择指南 1. 理解策略分类的核心逻辑 在强化学习领域&#xff0c;策略选择直接影响算法的行为模式和学习效果。我们先从最基础的概念切入&#xff1a;什么是策略&#xff1f;简单来说&#xff0c;策略就是智能体在特…...

收藏必备!小白程序员快速入门RAG,轻松提升大模型生成效果与准确性

RAG&#xff08;检索增强生成&#xff09;是一种提升大模型生成内容准确性和时效性的技术框架。通过从外部知识库检索信息&#xff0c;再将检索结果与大模型结合&#xff0c;有效解决大模型知识过时和幻觉问题。RAG流程包括知识嵌入存储、相似度检索和增强生成三个核心环节&…...

Java POI读取大文件慢如何优化

用java poi处理大型excel文件时&#xff0c;往往会遇到阅读速度慢的问题&#xff0c;严重影响程序性能。本文将针对“java poi打开大文件的慢优化方法&#xff1f;”这个问题讨论了几个可行的解决方案&#xff0c;以帮助开发者提高程序效率。问题在于java poi 默认情况下&#…...

GLM-4-9B-Chat-1M惊艳效果:复杂SQL代码库跨文件依赖关系可视化

GLM-4-9B-Chat-1M惊艳效果&#xff1a;复杂SQL代码库跨文件依赖关系可视化 1. 项目背景与核心价值 当你面对一个包含数百个SQL文件的大型数据仓库项目时&#xff0c;最头疼的问题是什么&#xff1f;我相信很多开发者和数据工程师都会说&#xff1a;理不清的表依赖关系。 传统…...

仅剩最后3家银行未完成Java Istio全面替换——这份含12类Java Agent冲突检测脚本、4种Sidecar注入模式对比的适配手册即将下线

第一章&#xff1a;Java Istio适配现状与收官倒计时Istio 1.20 是最后一个官方支持 Java 客户端&#xff08;istio-java-api&#xff09;的版本&#xff0c;自 1.21 起&#xff0c;Istio 社区正式移除了对 Java SDK 的维护和 CI 验证。这一决策标志着 Java 生态在 Istio 原生控…...

FOIL框架实战:用不变学习破解时间序列预测的OOD难题

1. 当时间序列预测遇上OOD难题&#xff1a;从业务痛点说起 去年冬天&#xff0c;我接手了一个零售销量预测项目。客户兴奋地展示着他们在历史数据上达到95%准确率的LSTM模型&#xff0c;但实际部署后&#xff0c;这个"明星模型"在新年促销季的预测误差突然飙升到40%。…...