75 题以后
题目 76
下面有关Cookie的说法,错误的是
Cookie不是只有一个,而是一个网站一个
Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie
在HTTP请求中的Cookie是密文传递的
有一些Cookie在用户退出会话的时候就被删除了,这样可以有效保护个人隐私
正确答案及解析
答案:C
HTTP的cookie是明文传送的,HTTPS的cooike是密文传送的。
题目 77
关于 linux 的进程,下面说法不正确的是:
僵尸进程会被 init 进程接管,不会造成资源浪费;
孤儿进程的父进程在它之前退出,会被 init 进程接管,不会造成资源浪费;
进程是资源管理的最小单位,而线程是程序执行的最小单位。Linux 下的线程本质上用进程实现;
子进程如果对资源只是进行读操作,那么完全和父进程共享物理地址空间。
正确答案及解析
答案:A
孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么那些子进程将成为孤儿进程。孤儿进程将被init进程(进程号为1)所收养,并由init进程对它们完成状态收集工作。
僵尸进程:一个进程使用fork创建子进程,如果子进程退出,而父进程并没有调用wait或waitpid获取子进程的状态信息,那么子进程的进程描述符仍然保存在系统中。这种进程称之为僵死进程。
题目 78
拓扑结构指的是()的拓扑结构。
资源网络
通信网络
线路网络
链路
正确答案及解析
答案:A
计算机网络拓扑结构是指网络中各个站点相互连接的形式,各个站点抽象来说都是网络资源。
计算机网络的最主要的拓扑结构有总线型拓扑、环型拓扑、树型拓扑、星型拓扑、混合型拓扑以及网状拓扑。其中环形拓扑、星形拓扑、总线拓扑是三个最基本的拓扑结构。在局域网中,使用最多的是星型结构。
题目 79
在下面的叙述中正确的是()。
线程是比进程更小的能独立运行的基本单位
引入线程可提高程序并发执行的程度,可进一步提高系统效率
线程的引入增加了程序执行时时空开销
一个进程一定包含多个线程
正确答案及解析
答案:B
选B,A线程不能独立运行,线程需要进程所获得的资源。
C引入线程机制降低了时空的开销。
D一个进程至少包含一个主线程(线程数量大于等于1)。
题目 80
已知有一个关键字序列:(19,14,23,1,68,20,84,27,55,11,10,79)散列存储在一个哈希表中,若散列函数为H(key)=key%7,并采用链地址法来解决冲突,则在等概率情况下查找成功的平均查找长度为()。
正确答案及解析
答案:1.5
题目 81
Longest Increasing Subsequence (LIS) means a sequence containing some elements in another sequence by the same order, and the values of elements keeps increasing.For example, LIS of {2, 1, 4, 2, 3, 7, 4, 6} is {1, 2, 3, 4, 6}, and its LIS length is 5. Considering an array with N elements, what is the average time and space complexity to get the length of LIS?
Time: N^2, Space: N^2
Time: N^2, Space: N
Time: NlogN, Space: N
Time: N, Space: N
Time: N, Space: C
正确答案及解析
答案:C
最长递增子序列,可以用动态规划(DP)算法来求解。
动态规划相当于递归的改进版,就是用辅助数组记录求解的中间过程来减少计算量。
需要一个长度为N的辅助数组记录当前子串的最长递增子序列的长度。
平均时间复杂度为NlogN,空间复杂度为N
题目 82
某二叉树T有n个结点,设按某种顺序对T中的每个结点进行编号,编号为1,2,…,n,且有如下性质:T中任一结点V,其编号等于左子树上的最小编号减1,而V的右子树的结点中,其最小编号等于V左子树上结点的最大编号加1。这时是按()编号的
中序遍历序列
前序遍历序列
后序遍历序列
层次顺序
正确答案及解析
答案:B
题目 83
下面有关共享内存,说法不正确的是?
共享内存和使用信号量一样,属于进程间通信的一种方式。
使用shmget函数来创建共享内存
尽管每个进程都有自己的内存地址,不同的进程可以同时将同一个内存页面映射到自己的地址空间中,从而达到共享内存的目的
共享内存提供了同步机制,在第一个进程结束对共享内存的写操作之前,会有自动机制可以阻止第二个进程开始对它进行读取
正确答案及解析
答案:D
共享内存并没有提供同步机制。为了防止冲突,用信号量的方式来控制访问临界区的资源!
题目 84
有作业控制块JCB连成一串而形成的排队队列称为()。
挂起队列
阻塞队列
就绪队列
后备队列
正确答案及解析
答案:D
三种调度模式:
高级调度 (作业调度或长程调度JCB ):后备队列
中级调度 (中程调度 pcb):就绪队列,阻塞队列,
低级调度 (进程调度或短程调度 pcb):挂起队列 or 就绪队列 or 阻塞队列
题目 85
tan(x)
sec^2(x)
-tan(x)
-sec^2(x)
正确答案及解析
答案:C
题目 86
如下代码输出结果是什么?
Hello
Hello World!
Well
以上全部不正确
正确答案及解析
答案:D
函数 char *myString()
中没有使用new或者malloc分配内存,所有buffer数组的内存区域在栈区
随着 char *myString()
的结束,栈区内存释放,字符数组也就不存在了,所以会产生野指针,输出结果未知
题目 87
以下GPU缓冲区中哪个是深度缓冲区:()
frame buffer
z buffer
color buffer
stencil buffer
正确答案及解析
答案:B
题目 88
下列关于集中式总线解决方式的叙述中正确的是()
集中式串行链接,查询所有部件都用一条"总线请求"线
集中式定时查询,所有部件共用一条"总线忙"线
集中式独立请求,查询所有部件都用一条"总线请求"线
集中式定时查询,所有部件都用一条"总线请求"线
正确答案及解析
答案:ABD
集中式总线请求方案有三种,定时查询、串行连接和独立请求,定时查询和串行连接所有部件都用一条"总线请求"线,但是定时查询是由CPU去定时查询总线上的部件,而串行连接是部件去请求CPU。独立请求每个部件均有一条 "总线请求"线。
题目 89
二进制地址为011011110000,大小为(4)10和(16)10块的伙伴地址分别为: ? , ? 。
正确答案及解析
答案:011011110100, 011011100000
均为十进制,大小分别为 4 和 16
题目 90
写出表达式 ((A+B)*C-(D-E)*(F+G))
的前缀表达式 ? 。
正确答案及解析
答案:-*+ABC*-DE+FG
题目 91
任一查找树(二叉分类树)的平均查找时间都小于用顺序查找法查找同样结点的线性表的平均查找时间()
正确答案及解析
答案:错的
只有左子树或者右子树的BST就是一样的了
题目 92
在重载运算符函数时,下面()运算符必须重载为类成员函数形式()
+
-
++
->
正确答案及解析
答案:D
只能使用成员函数重载的运算符有:=、()、[]、->、new、delete
。
题目 93
面向对象程序设计思想的主要特征不包括()
封装性
多态性
继承性
模板
正确答案及解析
答案:D
面向对象程序语言的三大特征分别是:1.封装,2.继承,3.多态
题目 94
对任何数据结构链式存储结构一定优于顺序存储结构()
正确答案及解析
答案:错的
查找则用数组好,添加和删除则用链表。
题目 95
下列关于树的深度优先搜索算法描述错误的是?
按照某种条件往前试探搜索,如果前进中遭到失败,则退回头另选通路继续搜索,直到找到条件的目标为止。
先访问该节点所有的子节点,遍历完毕后选取它未访问过的子节点重复上述过程,直到找到条件的目标为止。
假设数的顶点数为V,则算法的复杂度为O(V)
深度优先算法非常适合使用递归来实现
正确答案及解析
答案:B
A选项讲的是深搜,B选项讲的是广搜啊
题目 96
下列各种操作的时间中,哪一个不属于活动头硬盘的存取访问时间?
寻道时间
旋转延迟时间
定位时间
传送时间
正确答案及解析
答案:C
硬盘的存取访问时间分为三个部分:
寻道时间Ts,旋转延迟时间Tr和传送时间Tt
题目 97
设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为()
13
33
18
40
正确答案及解析
答案:B
数组下标从1开始,只存储其下三角形元素,在a8,5的前面有7行,第1行有1个元素,第2行有2个元素,…,第7行有7个元素,这7行共有(1+7)×7/2=2 8个元素,在第8行中,a8,5的前面有4个元素,所以,a8,5前有28+4=32个元素,其地址为33。
题目 98
假设二叉排序树的定义是:1、若它的左子树不为空,则左子树所有节点均小于它的根节点的值;2、若右子树不为空,则右子树所有节点的值均大于根节点的值;3、它的左右子树也分别为二叉排序树。下列哪种遍历之后得到一个递增有序数列 ()
前序遍历
中序遍历
后序遍历
广度遍历
正确答案及解析
答案:B
题目 99
某指令流水线由 5 段组成,各段所需要的时间分别是:t、3t、t、2t 和 t 。问如果连续执行 10 条指令,则吞吐率是多少 ?
正确答案及解析
答案:0.2857/t
自己画出指令执行的时空图,可以看出执行第n条指令的时间是:8t+(n-1)*3t
而吞吐率=指令/时间=10/(8t+9*3t)=10/35*t=0.2857t
题目 100
通过文件名存取文件时,文件系统内部的操作过程是通过?
文件在目录中查找文件数据存取位置。
文件名直接找到文件的数据,进行存取操作。
文件名在目录中查找对应的i节点,通过i节点存取文件数据。
文件名在目录中查找对应的超级块,在超级块查找对应i节点,通过i节点存取文件数据
正确答案及解析
答案:C
如果一个文件有多个数据块,这些数据块很可能不是连续存放的,应该如何寻址到每个块呢?实际上,根目录的数据块是通过其inode中的索引项Blocks[0]找到的,事实上,这样的索引项一共有15个,从Blocks[0]到Blocks[14],每个索引项占4字节。前12个索引项都表示块编号,例如上面的例子中Blocks[0]字段保存着24,就表示第24个块是该文件的数据块,如果块大小是1KB,这样可以表示从0字节到12KB的文件。如果剩下的三个索引项Blocks[12]到Blocks[14]也是这么用的,就只能表示最大15KB的文件了,这是远远不够的,事实上,剩下的三个索引项都是间接索引。
题目 101
图中每个圆圈是一个补给站,存储着一定数量的汽油(在圈中标识),每个圈之间的路上标识了这段路需要消耗的汽油量,一辆小车从A点出发,在图上随意行走,到达某个补给站后,可以获得这个补给站的所有汽油,则其到B点后最多剩余的汽油量是____
。
正确答案及解析
答案:10
总共是 7+1+3+1+0+5-7=10
可以使用A*算法获得
题目 102
给定如下C程序:
正确答案及解析
答案:node_t* m=n; n=n->next; m->next=head; head=m;
题目 103
若有定义int(*pt)[3];则下列说法正确的是:
定义了基类型为int的三个指针变量
定义了基类型为int的具有三个元素的指针数组pt
定义了一个名为*pt、具有三个元素的整型数组
定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组
正确答案及解析
答案:D
题目 104
实现虚拟存储的目的是()。
实现存储保护
事项程序浮动
扩充辅存容量
扩充主存容量
正确答案及解析
答案:D
题目 105
下面程序应该输出多少?
正确答案及解析
答案:POINTERSTEW
题目 106
虚拟存储的容量受到下列哪一个因素的限制影响最大?
磁盘空间大小
物理内存大小
数据存放的实际地址
计算机地址位数
正确答案及解析
答案:B
本题问的是影响最大的因素,所以选内存大小。如果是有影响的因素,则有内存大小,外存大小,计算机寻址位数。
题目 107
Which of the following is(are) true about providing security to database servers ? Select all that apply
Do not host a database server on the same server as your web server
Do not host a database server on a server based system
Do not use blank password for SA account
Employ a centralized administration model
正确答案及解析
答案:ABCD
题目 108
Unix系统中,下列哪些可以用于进程间的通讯:( )
socket
共享内存
消息队列
信号量
正确答案及解析
答案:ABCD
题目 109
以下数字在表示为double(8字节的双精度浮点数)时存在舍入误差的有()。
2的平方根
10的30次方
0.1
0.5
100
正确答案及解析
答案:ABC
题目 110
在mysql中,与语句SELECT * FROM book b WHERE b.book_num NOT BETWEEN 200 AND 300;
等价的有
正确答案及解析
答案:SELECT * FROM book b WHERE b.book_num < 200 OR b.book_num > 300
注意BETWEEN AND的范围,上下都取等于。
题目 111
随着装填因子a的增大,用闭哈希法解决冲突,其平均搜索长度比用开哈希法解决冲突时的平均搜索长度增长得慢()
正确答案及解析
答案:错的
开哈希表-------链式地址法
闭哈希表-------开放地址法
装填因子增大,意味着哈希表的空间利用率在增大。
开哈希和闭哈希主要的区别在于,随着哈希表的密集度提高,使用闭哈希时,不仅会与相同哈希值的元素发生冲突,还容易与不同哈希值的元素发生冲突;而开哈希则不受哈希表疏密与否的影响,始终只会与相同哈希值的元素冲突而已。所以在密集度变大的哈希表中查找时,显然开哈希的平均搜索长度不会增长。
题目 112
进程从CPU退下时,将"现场"保存在系统栈内。
正确答案及解析
答案:错的
错,保存在任务栈中,系统栈要给下一个要运行的进程用
题目 113
采用深度优先搜索或拓扑排序算法可以判断出一个有向图中是否有环(回路)()
正确答案及解析
答案:对的
深度优先搜索只要在其中记录下搜索的节点数n,当n大于图中节点数时退出,并可以得出有回路
若有回路,则拓扑排序访问不到图中所有的节点,所以也可以得出回路
题目 114
对下列常见的各种网络术语,描述错误的是?
DNS(域名系统)是一种用于TCP/IP应用程序的分布式数据库,因此它在TCP/IP体系结构中处于应用层。
TFTP是一种文件传递应用程序,它使用的传输层协议是TCP
Telnet是标准的提供远程登录功能的应用,可以在不同OS系统的主机之间运行
Ping是对两个TCP/IP系统连通性进行测试的基本工具,它利用ICMP进行基本的请求和应答
正确答案及解析
答案:B
TFTP为简单文件传输协议,是基于UDP实现的,故传输层协议为UDP
题目 115
代码生成阶段的主要任务是( )
把高级语言翻译成汇编语言
把高级语言翻译成机器语言
把中间代码变换成依赖具体机器的目标代码
把汇编语言翻译成机器语言
正确答案及解析
答案:C
编译程序的工作过程一般划分为五个阶段:词法分析、语法分析、语义分析与中间代码产生、优化、目标代码生成。所以选C 。
题目 116
求下面函数的返回值。
假定x = 9999。
正确答案及解析
答案:8
x=x&(x-1);
& 是位运算符,需要将x转化成二进制计算,当&两边都为1时,为1,否则为0, 该题相当于求x的二进制式中含有1的个数,
x&(x-1)
求的是二进制中1的个数
x|(x+1)
求的是二进制中0的个数
题目 117
把校园中同一区域的两张不同比例尺的地图叠放在一起,并且使 其中较小尺寸的地图完全在较大尺寸的地图的覆盖之下。 每张地图上 都有经纬度坐标,显然,这两个坐标系并不相同。我们把恰好重叠在 一起的两个相同的坐标称之为重合点。 下面关于重合点的说法中正确 的是?
正确答案及解析
答案:必然有且只有一个重合点
假设地图有不止一个重合点,把任意两个重合点连成一条直线,则在大地图和小地图上的直线也是重合的,且长度相同。这导致两个地图的比例相等,与题设相矛盾。所以两个地图至多有一个重合点。
题目 118
通用多态是指
强制多态和包含多态
重载多态和强制多态
参数多态和重载多态
包含多态和参数多态
正确答案及解析
答案:D
题目 119
下面程序的输出结果是__________
。
正确答案及解析
答案:0
题目 120
程序动态链接的时刻是()。
编译时
装入时
调用时
紧凑时
正确答案及解析
答案:B
B C都可以的 有装载时动态链接 也有运行时动态链接。。。
题目 121
一个具有8个顶点的连通无向图,最多有()条边
正确答案及解析
答案:28
8个点中任选择两个, 都可以有一条边, 最多 8 * 7 / 2 = 28
题目 122
在分时操作系统中,进程调度经常采用( )算法
先来先服务
最高优先权
时间片轮转
随机
正确答案及解析
答案:C
题目 123
关于函数的描述正确的是___
。
虚函数是一个static型的函数
派生类的虚函数与基类的虚函数具有不同的参数个数和类型
虚函数是一个非成员函数
基类中说明了虚函数后,派生类中起对应的函数可以不必说明为虚函数
正确答案及解析
答案:D
在派生类中重新定义该虚函数时,关键字virtual可以写也可以不写。
一个虚函数无论被公有继承多少次,它仍然保持其虚函数的特性。
虚函数必须是其所在类的成员函数,而不能是友元函数,也不能是静态成员函数(static)
题目 124
以下代码输出什么?
正确答案及解析
答案:1,1
题目 125
下面数据结构能够支持随机的插入和删除操作、并具有较好的性能的是____
。
数组和链表
链表和哈希表
哈希表和队列
队列和堆栈
堆栈和双向队列
双向队列和数组
正确答案及解析
答案:B
数组和队列不方便插入和删除,因为队列在中间不好插入和删除,队列只在端点插入和删除,所以队列要插入和删除要移位许多
题目 126
设一个系统中有5个进程,它们的到达时间和服务时间如下,A的到达时间为0,服务时间为3;B的到达时间为2,服务时间为6;C的到达时间为4,服务时间为4;D的到达时间为6,服务时间为5;E的 到达时间为8,服务时间为2,忽略1/0以及其他开销时间,若分别按先来先服务(fFCFS)进行CPU调度,其平均周转时间为?
正确答案及解析
答案:8.6
题目 127
10.1.0.1/17的广播地址是( )
正确答案及解析
答案:10.1.127.255
题目 128
以下有关Http协议的描述中,正确的有?
post请求一般用于修改服务器上的资源,对发送的消息数据量没有限制,通过表单方式提交
HTTP返回码302表示永久重定向,需要重新URI
可以通过206返回码实现断点续传
HTTP1.1实现了持久连接和管线化操作以及主动通知功能,相比http1.0有大福性能提升
正确答案及解析
答案:ACD
HTTP /302 redirect: 302 代表暂时性转移(Temporarily Moved )。
HTTP/206 “Partial Content”响应是在客户端表明自己只需要目标URL上的部分资源的时候返回的.这种情况经常发生在客户端继续请求一个未完成的下载的时候(通常是当客户端加载一个体积较大的嵌入文件,比如视屏或PDF文件 ),或者是客户端尝试实现带宽遏流的时候.
题目 129
如果系统现在需要在一个很大的表上创建一个索引,你会考虑那些因素,如何做以尽量减小对应用的影响?
增大
sort_area_size(8i)/pga_aggregate_target(Arrayi)
值如果表有分区(一般大表都要用到分区的),按分区逐个建索引,如果是本地索引的话
系统空闲的时候建。
把日志文件放到另一个地方
正确答案及解析
答案:ABC
不选D,改日志位置需要down机,应用在这个时间用不了
题目 130
堆肯定是一棵平衡二叉树()
正确答案及解析
答案:错的
堆是二叉树,但不保证是平衡二叉树,因为堆中左右子树的高度差并不保证小于等于1。
题目 131
堆是满二叉树()
正确答案及解析
答案:错的
堆是完全二叉树,但不是满二叉树。
题目 132
在用堆排序算法排序时,如果要进行增序排序,则需要采用"大根堆"()
正确答案及解析
答案:对的
因为大根堆每次生成的根都会跟最右侧没有排序的叶子节点进行交换,从而使得越大的元素越放在后面。这个特性使用数组的结构能够很清晰的表现出来。最终得到了升序排列。
如果是小根堆,则每次拿到最小的跟最右侧未排过序的叶子节点进行交换,最终得到的序列是递减的。
题目 133
(101,88,46,70,34,39,45,58,66,10)是堆()
正确答案及解析
答案:对的
最小堆:直接父节点比两个子节点都小。
最大堆:直接父节点比两个子节点都大。
解析得到这是大堆,故是对的
题目 134
有 1000 个无序的整数,希望使用最快的方式找出前 50 个最大的,最佳的选择是( )
冒泡排序
基数排序
堆排序
快速排序
正确答案及解析
答案:C
题目 135
在堆排序算法中我们用一个数组A来模拟二叉树T,如果该A[0]存放的是T的根节点,那么A[K](K>0)
的父亲节点是
(K-1)/2
K/2
(K+1)/2
都不对
正确答案及解析
答案:A
当数组从0开始时,下标为k的结点的父结点下标为(k-1)/2;
当数组从1开始时,下标为k的结点的父结点下标为k/2;
题目 136
以下序列不是堆的是()
(100,85,98,77,80,60,82,40,20,10,66)
(100,98,85,82,80,77,66,60,40,20,10)
(10,20,40,60,66,77,80,82,85,98,100)
(100,85,40,77,80,60,66,98,82,10,20)
正确答案及解析
答案:D
最大(小)堆,所有节点都大(小)于其孩子节点,i 位置节点的孩子节点为 2i 和 2i+1 ,i 节点的父节点为 i/2 注意 i 是从1开始的。
题目 137
【0、2、1、4、3、9、5、8、6、7】是以数组形式存储的最小堆,删除堆顶元素0后的结果是()
【2、1、4、3、9、5、8、6、7】
【1、2、5、4、3、9、8、6、7】
【2、3、1、4、7、9、5、8、6】
【1、2、5、4、3、9、7、8、6】
正确答案及解析
答案:D
题目 138
就分类算法所用的辅助空间而言,堆分类、快速分类和归并分类的关系是()
正确答案及解析
答案:堆分类<快速分类<归并分类
堆分类 O(1) 用于交换的时候临时变量
快速分类 O(logn) 递归保存现场
归并分类 O(n) 用元素个数同长度空间保存归并结果
题目 139
下述二叉树中,哪一种满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序()
二叉排序树
哈夫曼树
AVL树
堆
正确答案及解析
答案:D
题目 140
最坏情况下 insert sort, quick sort ,merge sort 的复杂度分别是多少?
O(n*n),O(nlogn),O(n*n)
O(n*n),O(n*n),O(nlogn)
O(n*n),O(nlogn),O(nlogn)
O(nlogn),O(nlogn),O(nlogn)
正确答案及解析
答案:B
题目 141
有一组数据(15,9,7,8,20,-1,7,4),用堆排序的筛选方法建立的初始堆为()
-1,4,8,9,20,7,15,7
-1,7,15,7,4,8,20,9
-1,4,7,8,20,15,7,9
ABC均不对
正确答案及解析
答案:C
题目 142
关于序列16 14 10 8 7 9 3 2 4 1的说法下面哪一个正确()
大顶堆
小顶堆
不是堆
二叉排序树
正确答案及解析
答案:A
大顶堆,在n位置上的数要比在2n+1和2n+2位置上的数大(n 从 0 开始)
题目 143
下面有关c++静态数据成员,说法正确的是?
不能在类内初始化
不能被类的对象调用
不能受private修饰符的作用
可以直接用类名调用
正确答案及解析
答案:D
通常静态数据成员在类声明中声明,在包含类方法的文件中初始化.
初始化时使用作用域操作符来指出静态成员所属的类.
但如果静态成员是整型或是枚举型const,则可以在类声明中初始化!!
如果改成有的静态数据成员是可以直接在类中初始化就对了
题目 144
对n个记录的文件进行堆排序,最坏情况下的执行时间是多少?()
O(log2n)
O(n)
O(nlog2n)
O(n*n)
正确答案及解析
答案:C
时间复杂度分析,第一步首先建堆需要用时o(n),第二步对大小为n的堆,取出元素放入数组尾部用时o(1),重新进行保持堆特性为o(lgn),因此o(n)+o(nlgn),总体时间时间复杂度为o(nlgn)
题目 145
下标从1开始,在含有n个关键字的小根堆(堆顶元素最小)中,关键字最大的记录有可能存储在()位置上
[n/2]
[n/2]-1
1
[n/2]+2
正确答案及解析
答案:D
小根堆中最大的数一定是放在叶子节点上,堆本身是个完全二叉树,完全二叉树的叶子节点的位置大于[n/2]
题目 146
下列哪一个关键码序列不符合堆的定义?
A、C、D、G、H、M、P、Q、R、X
A、C、M、D、H、P、X 、G、0、R
A、D、P、R、C、Q、X 、M、H、G
A、D、C、M、P、G、H、X 、R、Q
正确答案及解析
答案:C
C选项中关键码序列用完全二叉树表示后很容易看出,结点值d大于了左子结点值c
题目 147
下列关于堆和栈的区别描述错误的有?
申请方式的不同,堆是系统自动分配,栈是自己申请
栈的大小是固定的,堆的大小受限于系统中有效的虚拟内存
栈的空间由系统决定何时释放,堆需要自己决定何时去释放
堆的使用容易产生碎片,但是用起来最方便
正确答案及解析
答案:A
栈内存操作系统来分配,堆内存由程序员自己来分配。
栈有系统自动分配,只要栈 剩余空间大于所申请空间,系统将为程序提供内存,否则将报异常提示栈溢出。
题目 148
已知关键字序列5,8,12,19,28,20,15,22是最小堆,插入关键字3,调整后得到的最小堆是()
3,8,12,5,20,15,22,28,19
3,5,12,19,20,15,22,8,28
3,12,5,8,28,20,15,22,19
3,5,12,8,28,20,15,22,19
正确答案及解析
答案:D
题目 149
初始序列为1 8 6 2 5 4 7 3一组数采用堆排序,当建堆(小根堆)完毕时,堆所对应的二叉树中序遍历序列为:()
8 3 2 5 1 6 4 7
3 2 8 5 1 4 6 7
3 8 2 5 1 6 7 4
8 2 3 5 1 4 7 6
正确答案及解析
答案:A
最小堆:先以数组顺序构建一棵完全二叉树,再从第n/2 +1个元素开始构建最小堆,再进行中序遍历。
首先从最后一个非端子结点开始(即2) 因为是建小根堆
所以交换子节点中小于自己的最小那个 3比2大——不换 看6 与4换
接着8与2换且与3换 最后1不换 就形成了最终结果 然后再中序遍历之
Last updated
Was this helpful?