西南大学计算机808 2024真题(回忆版)

第一题:判断题 10道

第二题:填空题 5道

数据结构选填题,与往年差别不大,有一道印象深的:

1、除了迪杰斯特拉算法,在面对无权图时,还可以采用()计算最短路径。广度优先

第三题:对比邻接表和邻接矩阵(给了一个表格填写,节点和边数量为n和e)

1、空间复杂度

2、是否适用于稠密图

3、访问一个节点所连边的时间复杂度

4、遍历整个图的时间复杂度

5、……参考王道

第四题,算法题一:计算A^n,不能用相似对角化,题中给出了计算B=A^2的方法如下

for(int i = 0; i<m; i++)

  for(int j = 0; j<m; j++)

    for(int k = 0; k<m; k++)

      b[i][j] = a[i][k] + a[k][j]  + b[i][j]

问:若用递推的方式计算A^n,即A^2=A*A, A^3=A^2*A 求时间复杂度;有没有更好的实现算法?写出需要用到的变量、结构体、算法思想和详细步骤,并求所给算法的时间复杂度。

第五题,算法题二:kruskal算法的实现,要求算法的空间复杂度最小,给出结构体、算法思想和实现步骤。重点说明如何在添加边时不会产生回路,涉及排序可以直接调用标准库函数。

第六题:还有一道想不起了,应该是数据结构题。

第七题:分页存储计算逻辑地址与物理地址各多少位,页表共5页,一页为4kb,映射到4页物理页面。(具体数据不一定对,思路为求出有n个页表项,n/4算出物理地址位数)

第八题:设有一输入和输出设备,分别只能同时被一个进程占用,cpu是单核的,假设输入、计算、输出三个过程占用时间为:T1(2ms),T2(3ms),T3(4ms)。问:现有三个作业同时到达,都需要进行T1 T2 T3,设计一个方法使得三个作业总用时最短,并说明。

第九题:混合索引分配。采用10个直接索引,1个一级目录,1个二级目录。问:只用直接索引和一级目录能否存下X兆的文件。(参考王道)

第十题:死锁的预防条件。(1)写出死锁的四个必要条件并说明;(2)说明下述方法能否避免死锁及原因:将临界资源从小到大编号,每种资源仅一个,进程按照资源的编号从小到大申请。

第十一题:请求分页管理。一个数组int A[100][99],假设一页为200字节,一个int型数据占1个字节,假设系统进给进程分配2个页框,且只能在分配页框内置换。

问:(1)采用LRU,用二重循环初始化A[100][99]时会产生多少次缺页?(2)最后留在内存中的是哪些数据?

第十二题:PV操作。(1)给出两段代码,对应进程P1,P2,用互斥访问语句(已给出)修改代码,来避免产生冲突;(2)考察互斥锁的硬件实现方法swap指令。题中给出代码填空,问while(old==?) lock==?,解释原因。

  • 9
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值