2017年江苏省培养单位苏州纳米技术与纳米仿生研究所866计算机原理之数据结构考研冲刺密押题
● 摘要
一、选择题
1. 直接插入排序在最好情况下的时间复杂度为( )。
【答案】B
【解析】当序列是按照直接插入排序的顺序有序时,此时进行插入时,每次都只需要和末尾
的一个元素进行比较,此时的时间复杂度最好,为
2. 设n 是描述问题规模的非负整数,下面程序片段的时间复杂度是( )。
【答案】A
【解析】其中,以基本的原操作重复执行的次数作为算法的时间度量。题目中的基本运算是语句,则有设其执行时间为T (n )
3. 排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一趟排序。下列排序方法中,每一趟排序结束时都至少能够确定一个元素最终位置的方法是( )。
I. 简单选择排序II. 希尔排序III. 快速排序IV . 堆排V . 二路归并排序
A. 仅 I 、III 、IV
B. 仅 I 、II 、III
C. 仅 II 、III 、IV
D •仅III 、IV 、V
【答案】A 。
【解析】其中简单选择排序、堆排序属于选择类排序,每一趟排序结束时将确定最大(或最小)关键字所在的位置。快速排序每一趟排序结束时将确定基准关键字所在的位置。希尔排序、二路归并排序每一趟排序结束时不一定能确定一个元素的最终位置。
4. 数组通常具有的两种基本操作是( )。
A. 查找和修改
B. 查找和索引
C. 索引和修改
D. 建立和删除
【答案】A
【解析】数组中的元素是顺序存放的,通过下标可以很好地查找数组元素,同时通过对应的指针可以修改数组元素的值,因此数组通常具有的两种基本操作是查找和修改。根据数组的性质,数组通常具有的两种基本运算是排序和查找。
5. 有六个元素6, 5, 4, 3, 2, 1顺序入栈,下列不是合法的出栈序列的是( )。
A.543612
B.453126
C.346521
D.234156
【答案】C
【解析】根据栈的后进先出的特点,对于C 选项中前两个元素得出栈顺序可以看出,4在5和6前先出栈,又根据入栈顺序,4在5和6后入栈,因此4出栈时,5和6必定在栈内,且5在6之上,所以出栈时5要比6先出找。
6. 已知序列25, 13, 10, 12, 9是大根堆,在序列尾部插入新元素18, 将其再调整为大根堆,调整过程 中元素之间进行的比较次数是( )。
A.1
B.2
C.4
D.5
【答案】B
【解析】对堆插入或删除一个元素,有可能不满足堆的性质,堆被破坏,需要调整为新堆。 (1)为原堆,
(2)为插入18后,
(3)比较10与18,交换后,
(4)比较25与18, 不交换,即为调整后的新的大根堆。
因此调整过程中元素之间进行的比较次数为2。
7. 下列有关总线定时的叙述中,错误的是( )。
A. 异步通信方式中,全互锁协议最慢
B. 异步通信方式中,非互锁协议的可靠性最差
C. 同步通信方式中,同步时钟信号可由多设备提供
D. 半同步通信方式中,握手信号的采样由同步时钟控制
【答案】C
【解析】A 项正确,异步通信方式中,全互锁协议最慢,主从模块都需要等待确认后才能撤销其信号;B 项正确,异步通信方式中,非互锁协议没有相互确认机制,因此可靠性最差;C 项错误,同步通信要遵循统一的时钟信号,不能由多设备提供;D 项正确,半同步通信方式中,握手信号的采样由同步时钟控制。
8. 一个C 语言程序在一台32位机器上运行。程序中定义了3个变量x 、Y 和z ,其中x 和z 为int 型,Y 为short 型。当x=127,Y=-9时,执行赋值语句z=x+Y后,x 、Y 和z 的值分别是( )。
A.x=0000007FH, Y=FFF9H, z=00000076H
B.x=0000007FH, Y=FFF9H, z=FFFF0076H
C.x=0000007FH, Y=FFF7H, z=FFFF0076H
D.x=0000007FH, Y=FFF7H, z=00000076H
【答案】D
【解析】当两个不同长度的数据,要想通过算术运算得到正确的结果,必须将短字长数据转换成长字长数据,这被称为“符号扩展”。例如,x 和z 为int 型,数据长32位,Y 为short 型,数据长16位,因此首先应将y 转换成32位的数据,然后再进行加法运算。运算采用补码的形式,而x 的补码是0000007FH , Y 的补码是FFFFFFF7H , 所以x+Y=00000076H。
9. 主机甲和主机乙间已建立一个TCP 连接,主机甲向主机乙发送了两个连续的TCP 段,分别包含300字节和500字节的有效载荷,第一个段的序列号为200, 主机乙正确接收到两个段后,发送给主机甲的确认序列号是( )。
A.500
B.700
C.800
D.1000
【答案】D
【解析】TCP 使用滑动窗口流控协议,窗口大小的单位是字节,本题中分别包含300字节和500字节的有效载荷,第一个段的序列号为200, 那么确认序列号为200+300+500=1000。
相关内容
相关标签