当前位置:问答库>考研试题

2017年南昌大学信息工程学院882数据结构考研题库

  摘要

一、选择题

1. 若用邻接矩阵存储有向图,矩阵中主对角线以下的元素均为零,则关于该图拓扑序列的结论是( )。

A. 存在,且唯一

B. 存在,且不唯一不唯一

C. 存在,可能不唯一

D. 无法确定是否存在

【答案】C 。

【解析】图的基本应用——拓扑排序,用邻接矩阵存储有向图,矩阵中主对角线以下的元素均为零,说明该图为有向无环图,所以其拓扑序列存在,但不一定唯一,如图的邻接矩阵为则存在两个拓扑序列。

2. 下列序列中,( )是执行第一趟快速排序后所得的序列。

【答案】C

【解析】快速排序将数据划分成两部分,其中一部分关键字比另一部分关键字小。

3. 用数组r 存储静态链表,结点的next 域指向后继,工作指针j 指向链中结点,使j 沿链移动的操作为( )。

【答案】A

【解析】因为是用数组存储,这里所说的工作指针j 相当于数组的下标,结点是存储一个值域和next 域,next 域就是存放下一个结点的下表,所以只要将next 域中的值赋给j 就可以实现j 沿链移动。

4. 设文件索引节点中有7个地址项,其中4个地址项为直接地址索引,2个地址项是一级间接地址索引,1个地址项是二级间接地址索引,每个地址项大小为4字节,若磁盘索引块和磁盘数据块的大小均为256字节,则可表示的单个文件最大长度是( )。

A.33KB

B.519KB

C.1057KB

D.16513KB

【答案】C

【解析】4个地址项为直接地址索引,其指向的数据块大小4×256B=lKB,一级间接地址索引可以索引256/4=64个直接地址索引,故2个一级间接地址索引指向的数据块大小为2×64×256B=32KB,二级间接地址索引为256/4×256/4=4096个直接地址索引,故1个二级间接地址索引指向的数据块大小为4096×256B=1024KB, 共计1KB+32KB+1024KB=1057KB。

5. 串的长度是指( )。

A. 串中所含不同字母的个数

B. 串中所含字符的个数

C. 串中所含不同字符的个数

D. 串中所含非空格字符的个数

【答案】B

【解析】串中字符的数目n 称为字符的长度,不必考虑其中单个字符是否相等。

6. 主机甲向主机乙发送一个的TCP 段,期望与主机乙建立TCP 连接,若主机乙接受该连接请求,则主机乙向主机甲发送的正确的TCP 段可能是( )。

A. (SYN=0, ACK=0, seq=11221, ack=11221)

B. (SYN=1, ACK=1, seq=11220, ack=11220)

C. (SYN=1,ACK=1, seq= 11221,ack= 11221)

D. (SYN=0, ACK=0, seq= 11220, ack= 11220)

【答案】C

【解析】TCP 是面向连接的,所谓面向连接,就是当计算机双方通信时必需先建立连接,然后数据传送,最后拆除三个过程,也就是客户主动打开TCP 传输,服务器被动打开。第一次握手:客户发送SYN=1,seq=x 给服务器,即客户的TCP 向服务器发出连接请求报文段,其首部中的同步位SYN=1,并选择序号seq=x,表明传送数据时的第一个数据字节的序号是X 。第二次握手:服务器发送SYN=1, ACK=1, Seq=y, ack=X+l给客户,即服务器的TCP 收到连接请求报文段后,如同意则发回确认。服务器在确认报文段中应使SYN=1,使 ACK=1,其确认号ack=x+l, 自己选择的序号seq=y。第三次握手:客户发送ACK=1, seq=x+l, ack=y+l 给服务器,即客户收到此报文段后向服务器给出确认,其ACK=1, 确认号aCk=y+l。客户的TCP 通知上层应用进程,连接已经建立。服务器的TCP 收到主机客户的确认后,也通知其上层应用进程:TCP 连接已经建立。 因此,本题中x=11220, y是主机乙自动选取的序号,可以与x 相同,也可以不相同,从而主机乙所

ACK=1, seq=y, ack=x+l,ACK=1, seq=y,ack=11221,发出的TCP 段应该是SYN=1,即 SYN=1,

从而答案是 C 。

7. 在下图所示的采用“存储一转发”方式的分组交换网络中,所有链路的数据传输速率为100Mbps 分组大小为1000B , 其中分组头大小20B , 若主机H1向主机H2发送一个大小为980000B 的文件,则在不考虑分组拆装时间和传播延迟的情况下,从H1发送开始到H2接收完为止,需要的时间至少是( )。

A.80ms

B.80.08ms

C.80.16ms

D.80.24ms

【答案】C

【解析】由题设可知,分组携带的数据长度为980B , 文件长度为980000B ,需拆分为1000个分组,加上头部后,每个分组大小为1000B , 总共需要传送的数据量大小为1MB 。由于所有链路的数据传输速度相同,因此文件传输经过最短路径时所需时间最少,最短路径经过分组交换机。当t =1M ×8/100Mbps =80ms 时,HI 发送完最后一个比特;到达目的地,最后一个分组,需经过两个分组交换机的转发,

每次转发的时间为所以,在不考虑分组拆装时间和传播延时的情况下,当时,H2接受完文件,即所需的时间至少为80.16ms

8. 一个TCP 连接总是以1KB 的最大段发送TCP 段,发送方有足够多的数据要发送。当拥塞窗口为16KB 时发生了超时,如果接下来的4个RTT (往返时间)时间内的TCP 段的传输都是成功的,那么当第4个RTT 时间内发送的所有TCP 段都得到肯定应答时,拥塞窗口大小是( )。

A.7KB

B.8KB

C.9KB

D.16KB

【答案】C

【解析】回顾TCP 流量控制和拥塞控制(慢启动)的知识点,从第一个MSS 开始,每次发送成功,拥塞窗口值翻倍,四次以后,应该为16, 但是由于拥塞阈值变为16/2=8, 故三次成功后为8, 以后为线性增长,故为8+1=9, 答案为C 。

9. 下列选项中,能缩短程序执行时间的措施是( )。

I. 提高CPU 时钟频率

II. 优化数据通路结构

III. 对程序进行编译优化

A. 仅I 和II

B. 仅I 和III