2012年南京工业大学828数据结构与操作系统真题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3.设有四道作业,它们进入系统的时间及需要执行的时间如下表所示,并规定第一个作业进入系统后立即 调度,忽略调度的时间开销。
作业号 进入系统时间 需执行时间(分钟) 开始时间 完成时间 周转时间
1
9:00
70
2
9:40
30
3
9:50
10
4
10:10
5
求:(1)采用先来先服务调度算法时的调度次序和平局周转时间。(5 分) (2)采用最短执行时间优先调度算法时的调度次序和平均周转时间。(5 分)
1、写出图中的拓扑排序序列(分别采用栈和队列)(6 分) ①②③④


2、某电文中使用 5 个字符:a,b,c,d,e 出现的频率依次:为 2、4、5、9、10,试构造一棵对应的
哈夫树及哈夫曼编码,并计算其带权路径长度 WPL。(6 分)
3、由下列网络的邻接矩阵,画出此带权的图(v1~v6),并用 Kruskal 法画出它的最小生成
南京工业大学
2012 年硕士研究生入学考试初试试题(A 卷)
科目代码: 828 科目名称: 数据结构与操作系统 满分: 150 分 注意: ①认真阅读答题纸上的注意事项;②所有答案必须写在答题纸上,写在本试题纸或草稿纸上均无效;
③本试题纸须随答题纸一起装入试题袋中交回!
第一部分:数据结构(共 90 分)
8、具有 10 个结点的完全二叉树的深度为

A.2
B.3
C.4
D.5
9、线性表进行二分查找时,要求线性表必须

A.以顺序方式存储
B.以链式方式存储
C.以链接方式存储,且结点按关键字有序 D.以顺序方式存储,且结点按关键字有序
10、对基本有序的表(21,36,40,54,,28,64,69,73)进行排序,下列哪种方法最好
H(key)=key%11,用线性探查法解决冲突,构造这组关键字的散列表,并计算等概率下成功
查找的平均查找长度 ASL 成功。(8 分)
散列表:
地址 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 存放 数据
四、编程填充题。(每小题 8 分,共 24 分) 1、实现在带头结点的单链表中删除多余值相同的结点的算法。
pivotkey=L.r[low].key; while(low<high)
{ while(low<high && L.r[high].key>=pivotkey) (1) ;
L.r[low]=L.r[high];
while(low<high && L.r[low].key<=pivotkey) (2) ;
访问位 R 0
1
120
230
200
1
2
260
120
230
1
3
300
160
280
1
假设页的大小为 4KB(4096B),当进程执行到时刻 300 时,要访问逻辑地址 6AB8H 的数据,请回答下列问题:
(1)若采用先进先出(FIFO)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。(3 分) (2)若采用最近最久未使用(LRU)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。(3 分) (3)若采用时钟(CLOCK)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程(设搜索下一页的 指针沿顺时针方向移动,且当前指向 2 号页,示意图如下)。(4 分)
树(从 v1 出发)(6 分)
0 17 0 0 20 22
17 0 6 7 0 12
0 6 0 11 0 0

0
7 11 0 19 15
20 0 0 19 0 34 22 12 0 15 34 0
4、己知一组关键字为(38,12,6,52,26,33,15,68,41)的数据,表长为 15 列,散列函数为

A.edcba
B.decba
C.dceab
D.abcde
6、一个队列的入队序列是 1、2、3、4,则队列的输出序列是

A.4、3、2、1 B.1、4、3、2 C.3、2、4、1 D.1、2、3、4
7、在有 n 个结点的二叉链表树中,值为空的链域的个数为

A.n-1
B.2n-1
C.n+1
D.2n+1

7、具有 6 个顶点的无向图至少应有 条边才能确保是一个连通图。
8、什么是静态查找表
,什么是动态查找表

9、在内部排序方法中,关键宇比较次数与记录的初始序列无关的排序是
。 。
10、一组记录的关键字为(46,79,56,38,40,84),则利用堆排序方法建立的初始小根堆为 。
三、计算题(共 26 分)
第二部分:操作系统(共 60 分)
一、单项选择题(每小题 2 分,共 30 分)
1.下列选项中,导致创建新进程的操作是

Ⅰ.用户登录成功Ⅱ.设备分配Ⅲ.启动程序执行
A.仅Ⅰ和Ⅱ
B.仅Ⅱ和Ⅲ
C.仅Ⅰ和Ⅲ
D.Ⅰ和ⅡⅢ
2.某基于动态分区存储管理的计算机,其主存容量为 55MB(初始为空闲),采用最佳适配(Best Fit)算法,分配和

A.直接插入排序 B.简单选择排序 C.冒泡排序
D.归并排序
二、填空题(每小题 2 分,共 20 分)
1、逻辑结构可分为 2 类


2、存储结构可分为 4 种




3、评价一个算法一般从 4 个方面进行:正确性、可读性、

4、栈和队列都是运算受的线性表,其区别在于

5、矩阵的压缩存储是指

6、按照二叉树的定义,具有 3 个结点的二树有
300 号页框 3 号页
2 号页
260 号页框
100 号页框
0 号页
1 号页
120 号页框
2.假定系统有三个并发进程 read,move 和 print 共享缓冲器 B1 和 B2,进程 read 负责从设备上读信息,每 读出一个记录后把它存放到缓冲器 B1 中。进程 move 从缓冲器 B1 中取出一记录,加工后存入缓冲器 B2. 进程 print 将 B2 中的记录取出打印输出,缓冲器 B1 和 B2 每次只能存放一个记录。要求三个进程协调完成 任务,使打印出来的与读入的记录的个数,次序完全一样,请用 PV 操作,写出它们的并发程序。(10 分)
{ i= (2) ;
(3) ;
For(j=1;j<=G.n;j++) {
If(G.edge[i][j]==1 && !visited[j]) { cout<<Gvexlist(j]<<’’; visited[k]=ture;
(4) ;
} } } } 3、完整下列快速排字算(升序)。 【程序】
int Partition(SqList &L,int low,int high) { L.r[0]=L.r[row];
[程序]
Typedef struct Lnode
(4) ;
{ int data;
}
Struct Lnode *next;
}
}LinkList;
Void Delval_L(LinkList *L)
{ struct Lnode *p,*q,*r;
P=L->next;
While(p!=NULL && p->next!=NULL)
C.就绪队列为空队列
D.抢占式调度方式,P 的优先级高于当前运行的进程
4.下列各项中,不一定是进程调度时机的是

A.现运行的进程正常结束或异常结束
B.现运行的进程从运行态进入就绕态
C.现运行的进程从运行态进入等待态
D.有一进程从等待态进入就绪态
5.系统中有 4 个并发进程,都需要某类资源 3 个,试问该类资源最少为
B.3 个
C.4 个
D.5 个
12.在 UNIX 系统 V 中,如果一个盘块的大小为 1KB,每个盘块号占 4 个字节,那么一个进程要访问某文件中偏移
量为 12,345,678 字节处的数据时,需要经过

A.直接索引
B.一次间接址索引 C.二次间接索引 D.三次间接索引
13.设置当前工作目录的主要目的是
L.r[high]=L.r[low]; } L.r[low]=L.r[0]; return low; } void Qsort(SqList &L,int low,int high) { if(low<high) { pivotioc=Partition(L,low,high);
Qsort(L, (3) ); Qsort(L, (4) ); } }

A.4AC5H 和 14AC5H
B.4AC5H 和 20AC5H
C.8AC5H 和 20AC5H
D.8AC5H 和 102C5H
9.某计算机采用二级页表的分页存储管理方式,按字节编址,页大小为 211 字节,页表项大小为 4 字节,逻辑地
址结构如下图,逻辑地空间大小为 217 页,则表示整个逻辑地址空间的页目录表中包含表项的个数至少是 。
一、选择题(每小题 2 分,共 20 分)
1. 数据结构中,与所使. 存储结构
B.树
C.逻辑结构
D.图
2、算法分析的目的是

A. 分析算法的易懂性和文档性 B.分析算法的效率以求改进
C.找出数据结构的合理性
D.研究算法中的输入和输出的关系
3、计算机算法必须具备输入、输出和 等 5 个特性。

A.节省外存空间
B.节省内存空间
C.加快文件的检索速度
D.加快文件的读/写速度
14.下列选项中,在用户态执行的是

A 命令解释程序
B.缺页处理程序
C.进程调度程序
D.时钟中断处理程序
15.进程具有的特性包括:

①动态性②共享性③并发性④相互制约性⑤独立性⑥静态性
A.①③④⑤
B.①②④⑤
C.②④⑤⑥
A.64
B.128
C.256
D.512
页目录号 页号 页内偏移量
10,在缺页处理过程中,操作系统执行的操作可能是

Ⅰ.修改页表Ⅱ.磁盘 I/OⅢ.分配页框
A.仅ⅠⅡ
B.仅Ⅱ
C.仅Ⅲ
D.Ⅰ、Ⅱ和Ⅲ
11.若系统中有 5 个并发进程涉及某个相同的变量 A,则变量 A 的相关临界区是由
临界区构成。
A.2 个
A.易懂性、稳定性和安全性
B.可行性、可移植性和可扩充性
C.确定性、有穷性和稳定性
D.可行性、确定性和有穷性
4、在一个有 n 个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是

A.O(1)
B.O(n)
C.O(n²)
D.O(nlog2n)
5、一个栈的入栈序列是 a、b、c、d、e,则栈的不可能的输出序列是
释放的顺序为:分配 15MB、分配 30MB、释放 15MB 分配 8MB 分配 6MB,此时主存中最大空闲分区的大小是 。
A.7MB
B.9MB
C.10MB
D.15MB
3.若进程 P 一旦被唤醒就能投入运行,则系统可能是

A.非抢式调度方式,进程 P 的优先级最高
B.抢占式调度方式,就绪队列上的所有进程的优先级皆比 P 低
位示图需要
字节。
A.4K
B.8K
C.16K
D.32K
8.在一个分页虚存系统中,设页长 2KB,某用户程序有 30 页,若该程序的虚页 0、1、2、3、4、5、6、7 已
分别装入内存块 4、17、18、20、25、26、30,32 中,则该程序中的虚地址 0AC5H 和 3AC5H 对应的物理地
址分别是
D.①②④⑥
二、计算(综合)题(每题 10 分,共 30 分)
1.在某一采用固定分配局部置换策略的请求分页系统中,有一进程逻辑地址空间有 10 个页,分得了 4 个页框, 每页的装入时间、最后访问时间、访问位 R 如下表所示(时间用时钟点数表示)。
页号 页框号
0
100
装入时间 126
最后访问时间 260
{ q=p;
r=p->next;
While(r!=NULL)
{ if(p->data==r->data) { (1) ;
(2) ;}
else {q=r;
(3) ;}
}
2,完整下列图的广度优先搜索算法,(注:已知队列的基本操作函数: MakeNull(q)、Empty(q)、 EnQueue(k,q);DeQueue(q)、Froat(g)) 【程序】 vold BFS(MTGraph G, int k) { int i,j; QUEUE q; MakeNull(q); cout<<Gvexlist(k]<<’’; visited[k]=ture; EnQueue(k,q); while( (1) )
个时,不会因竞争该资源而
发生死锁。
A.9
B.10
C.11
D.12
6.下列选项中,满足短任务优先且不会发生饥饿现象的调度算法是

A.先来先服务 B.高响应比优先 C.时间片轮转
D.非抢占式短任务优先
7.某系统采用页式存储管理,页的大小为 4KB,设内存容量为 512M,内存的分配使用情况采用位示图表示,则
相关文档
最新文档