2021年 山东大学 算法导论考卷 回忆版
2021SC@SDUSC
一
(1)解释算法时间复杂度的三个符号——Θ、Ω、Ο
(2)T(n)=T(3n/4)+nlogn,计算T(n)的时间复杂度
(3)证明顶点覆盖问题是NP完全问题
二
(1)寻找强连通分支,证明其正确性,时间复杂度
(2)在已有最小生成树的基础上,将随机一条边的权重变大,求新的最小生成树的更新算法。写出伪代码,证明其正确性。
三
(1)寻找最短路径的三个相关证明
1.最短路径的子路径也是最短路径
2.对于任意两个点间的所有最短路径,总有一条为有限长度
3.证明三角不等式
(大概是这三个,诶嘿)
(2)Floyd-Warshall算法(多源最短路径问题)说明其相关思想,补全(更新)邻接矩阵,并写出最短路径
四
(1)从左到右有n堆棋子,每堆棋子若干个,只能合并相邻堆的棋子,合并的花费为被合并棋子堆的棋子数。
现要把这n堆棋子合并为一堆,给出一个花费最小的算法。写出伪代码,证明其正确性。
(2)有一个区间集N,中间有若干段闭区间。有一个点集P(数集合),如果P含有的任意数字包含在一段闭区间内,则称该区间被击中。
最小击中集:如果对于N中的任意一个区间,P中都存在一个点可以击中该集合,且要求P中的点尽可能少。
给出一个算法,求P中最小有多少个点,写出伪代码,并证明其正确性。
(这里其实是还有一张图来帮忙理解的,可惜我没找到一样的问题,下面补个类似的)
类似问题:假设存在下面需要付费的广播台,以及广播台信号可以覆盖的地区。 如何选择最少的广播台,让所有的地区都可以接收到信号
注:划线问题原题为英文(应该不止这两道,总之英文基本都能看懂,不会为难考生的)
2021年 山东大学 算法导论考卷 回忆版相关推荐
- 2021山东大学人工智能导论硕士回忆版
一名词解释 1强人工智能2机器学习3归纳推理4前束范式5人工神经网络 二简答 1搜索过程 2专家系统画图,写出核心部件作用 3ai几个发展阶段及其特点 4证据理论如何区分不确定和不知道 5粒子群优化算 ...
- 2021山东大学面向对象期末考试回忆版
2021山东大学面向对象期末考试回忆版 简答题 设计题 往年真题 授课教师:何伟老师 简答题 (可能顺序不太对) 1.重载.重定义.重置的区别,并使用C++或者JAVA举例说明 2.静态方法绑定,动态 ...
- 2021电子科技大学分布式系统期末考试回忆版
2021电子科技大学分布式系统期末考试回忆版 Copyright@天下小编都没马 收集了网上和烟酒僧群里的回忆题. pdf版:https://download.csdn.net/download/Mr ...
- 给出TREE_INSERT过程的非递归版本(算法导论第三版12.3-1)
给出TREE_INSERT过程的非递归版本(算法导论第三版12.3-1) template<typename T> void insert_recursive(BinaryTree< ...
- 写出TREE-PREDECESSOR的伪代码(算法导论第三版12.2-3)
写出TREE-PREDECESSOR的伪代码(算法导论第三版12.2-3) TREE-PREDECESSOR(x)if x.left != NILreturn TREE-MAXIMUM(x.left) ...
- 写出TREE-MINIMUM 和TREE-MAXIMUM的递归版本(算法导论第三版12.2-2)
写出TREE-MINIMUM 和TREE-MAXIMUM的递归版本(算法导论第三版12.2-2) template<typename T> BinaryTreeNode<T>* ...
- 二叉树的中序遍历非递归方法(算法导论第三版12.1-3)
二叉树的中序遍历非递归方法(算法导论第三版12.1-3) 1⃣️用栈实现 template<typename T> void inorder_tree_walk_non_recursion ...
- 二叉树的遍历(算法导论第三版12.1-4)(包含先序遍历,后序遍历和中序遍历)
二叉树的遍历(算法导论第三版12.1-4) 1⃣️先序遍历 template<typename T> void preorder_tree_wald(BinaryTreeNode<T ...
- 算法导论第三版第十一章11.1-4
算法导论第三版第十一章11.1-4 我们希望在一个非常大的数组上,通过利用直接寻址的方式来实现一个字典.开始时,该数组中可能包含一些无用信息,但要堆整个数组进行初始化时不太实际的,因为该数组的规模太大 ...
最新文章
- UNITY_MATRIX_IT_MV[Matrix]
- [云炬创业基础笔记]第二章创业者测试16
- hdu 1806线段树 区间合并
- ASP.NET MVC 实现页落网资源分享网站+充值管理+后台管理(10)之素材管理
- 【Direct3D游戏开发】——DirectInput 让世界动起来
- c语言给定一个字符串匹配,使用C语言解决字符串匹配问题的方法
- Python 超简单一键美化你的文章
- Cheatsheet: 2015 03.01 ~ 03.31
- [Be a Coding Plasterer] Components 1:get Basic Things
- java gc 例子_Java 中, 为什么一个对象的实例方法在执行完成之前其对象可以被 GC 回收?...
- laravel架构判断id存在与否 存在进行什么操作_基于 Module 的 Laravel API 架构
- 2019牛客多校第二场F Partition problem(暴搜)题解
- PHP调整网页,用PHP程序实现支持页面后退的两种方法
- 世界上最详细的Linux C udp实现文件传输
- 数据价值挖掘利器!阿里云实时数仓AnalyticDB PG
- Hook Android q 剪贴板限制,AndroidQ(10)获取剪切板内容适配
- JAVA实现成绩统计之及格率和优秀率
- android桌面插件每秒刷新
- 剑指 Offer(C++版本)系列:剑指 Offer 10- II 青蛙跳台阶问题
- python编程midi键盘按键_python 偷懒技巧——使用 keyboard 录制键盘事件