【苏州大学2022年计算机考研872数据结构与操作系统真题与解析内含网盘分享】

苏州大学2022年计算机考研872数据结构与操作系统真题

欢迎报考苏州大学计算机学院

你好! 本文将带来2022苏州大学872真题一份,请需要的考生自行查收,文末还有答案解析,全部的资料和招生信息以及最新的23真题。

2022真题

数据结构部分

一、选择题
1)时间复杂度大小比较正确的是
①n^3+1000n
②n^3+10000n
③2^n
④(log2n)^100
⑤n!-n^20
⑥n^50+n
2)以下哪种算法对任意图判断回路最高效
A. 深度优先遍历
B. 广度优先遍历
C. Prim 算法
D. Kurskal
3)双链表比单链表时间上的效率更高的是
A.删除结点
B.遍历全表
C.查找指定结点
D.插入结点
4)栈,从 1 到 n 入栈,然后分别出栈,每次 push 或 pop 时间为 x,每次栈操作后到下一次栈操作等待时间是 y……栈元素平均等待时间
A. n(x+y)
B. 3y+2x
C. n(x+y)-x
D. 2y+x
5)满足下列两个条件,并且要求每次操作时间复杂度不超过 O(log2n)
①删除最小元素
②对于没有出现在集合里的元素,将该元素插入
A. 可以用平衡二叉树,不可以用堆
B. 可以用堆,不可以用平衡二叉树
C. 既可以用平衡二叉树,又可以用堆
D. 既不可以用平衡二叉树,又不可以用堆
2.判断,对的打勾,错的打叉,无需理由
1)相对于闭散列表,开散列表删除一个记录更容易。
2)一颗四叉树只有度为 0 和度为 4 的结点,叶子节点个数为⌈3n/4 ⌈
3)AOE 网中,按照结点的拓扑排序序列求结点所代表的事件的最晚发生时间。
4)快速排序是就地排序算法,空间复杂度为 O(1)
5)在有向网 G 中,顶点 a 到顶点 b 有最短路径 path[],每条边权值都加 1 后,ab 依然是最短路径。
三、一个顺序表,存储结构为没有头节点的单链表,使用递归方法删除单链表位序为奇数的结点,例如(1,2,3,4,5),删除后的结果为(2,4)
四、一颗二叉树以二叉链表表示,编写算法求二叉排序树第 k 小的结点
五、求给定数组连续 n(n≥1)个元素的乘积最大值,如数组(-2,0,-8,-6,-1)乘积最大值48,(-2,98,0)乘积最大值为 98,

操作系统部分

1.填空
1)一个 mutex 为记录型信号量,10 个进程竞争资源,若要保证最多 5 个进程进入临界区,mutex 变化范围为
2)多对一线程有 9 个进程,其中的 8 个进程都有 5 个线程,A 进程有 9 个线程,每个进程都运行过,A 进程占总运行时间的多少
3)假设内存管理的页面均在 TLB 中,TLB 访问时间忽略不计。内存访问 1us,置换但无需写回的概率为 70%,有空闲块或置换页面未修改时间耗时 8ms,置换页面被修改耗时 20ms时,要使有效访问时间不超过 2us,缺页率最大为
4)有四个进程 P1,P2,P3,P4,三个不同类型资源 R1,R2,R3,P1 进程申请资源 R1 和R2,P2 进程申请资源 R2 和 R3,P3 进程申请资源 R1 和 R3,P4 申请 R2,若发生死锁,至少有____个进程发生死锁
5)一个系统……内存大小 16GB,页面大小为 4KB,FAT 表大小
二.在一个系统中 f1.txt 为普通文件,f2.txt 为 f1.txt 的硬链接,f3.txt 为 f1.txt 的符号链接。

  1. 写出创建硬链接的过程,f1.txt 与 f2.txt 的内容是否相同?
  2. 写出创建符号链接的过程,f1.txt 与 f3.txt 的内容是否相同?
  3. (这题是修改某文件内容)f2.txt 的文件内容和 f1.txt 的文件内容是否一致?为什么?
    f3.txt 的文件内容和 f1.txt 的文件内容是否一致?为什么?
  4. 当 f1.txt 被删除后,f2.txt 和 f3.txt 是否存在?若文件还存在,则文件打开时会有什么变化?

三 SMP 系统双核操作系统,每个内核都是抢占式优先级调度,优先数小的级别高。
在这里插入图片描述
最后一行是2 4 5 csdn水印去不掉
1)若不考虑亲和性,画出上述甘特图。
2)不考虑亲和性的情况下,平均等待时间是多少?
3 )考虑亲和性的情况下,画出甘特图。
4)考虑亲和性的情况下,平均等待时间是多少?

四 32 位操作系统,页面大小 4KB,运行一段 c 语言程序。有 16 个 TLB。(《现代操作系统》第三章课后习题改编)

int D1[M]; // 一个整型占 4 个字节
int D2[M]; // 假设数组 D2 已赋初值
int k=N;
for(i=0;i<M;i+=k)
{
	D1[i]=D2[i]+k;
}

1.32 位操作系统理论上内存为多大?
2.最多有多少个页框?
3.假设程序为 256MB,需要几级页表?
4.设 M=1MB,N=128,运行一次以上代码缺页率为多少?
5.M 和 N 为多少时,循环语句每一次执行 TLB 都不会命中?

五 以下列 C 语言……在 Linux 系统中……getpid()和 getppid()为调用系统中断,分别为获取当前进程 PID 和获取父进程 PID……PID 每次……例如,当前进程 PID 从 1000 开始,以后每次在此基础上加 1,

int main()
{
int pid[3];
int rnt;
int i;
for(i=0;i<2;i++){
pid[i]=fork();
if(pid[i]==0){
print("Child!My_PID is %d,Parent_PID is %d",getpid(),getppid());
}
else{
print("Parent!My_PID is %d,Child_PID is %d",getpid(),pid[]);
wait(&rnt);
} 
}

1.该程序创造了几个进程?
2.画出进程树
3.写出运行结果
4.该程序运行在其他操作系统上结果是否唯一?为什么?(假设每次分配的进程 PID 相同)
5.如果去掉 wait(&rnt)运行结果是否唯一?为什么?

答案与解析

完整答案在此:苏州大学872黄金版https://pan.baidu.com/s/1dRt9nbwLokil8E1toJNzsw?pwd=a111
内含23年来真题答案与解析,多知识点覆盖,更有23真题,持久更新。
部分答案在下:部分操作系统答案

部分数据结构答案
往期经典介绍:

https://blog.csdn.net/weixin_44130038/article/details/126207225?spm=1001.2014.3001.5501
https://blog.csdn.net/weixin_44130038/article/details/126275481?spm=1001.2014.3001.5501

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值