news 2026/2/10 9:39:09

HNU 算法设计与分析2018年期末考试原题(附自己写的解析)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
HNU 算法设计与分析2018年期末考试原题(附自己写的解析)

前言

感谢@甘晴void大佬的分享,找到了这套卷子。

这套卷子因为考前时间有限,有些题没来得及做,但是看了一下,试卷题型已经较为贴近当前题型(除了多了选择题和论述题),而且题目质量中规中矩,因此对于没做的题,贴上笔者检查过的AI解析。

一、单项选择题

题干

解析

1. 答案:A
解析:Strassen 矩阵乘法通过把矩阵分成子块、递归计算(分治)将 8 次乘法减少为 7 次实现加速。

2. 答案:C

3. 答案:D

4. 答案:B
解析:分数背包的贪心算法需先按价值密度排序,排序时间主导为 O(nlogn)。

5. 答案:B
解析:

在回溯法中,采用深度优先搜索,活结点可能被多次回溯访问,但每次回溯时该结点仍然是活结点,因此一个结点在成为活结点后可能持续作为活结点存在,直到其所有分支被探索完毕。

而在分支限界法中,活结点通常存储在队列或优先队列中,一旦一个活结点被扩展,它就会被移除队列并变为死结点,之后不再被使用。因此,在分支限界法中,一个活结点最多只有一次机会成为扩展结点。

6. 答案:B
解析:活动安排问题用“按最早结束时间贪心”能得到最优解,属贪心策略。

7. 答案:无
解析:

8. 答案:A

解析:蒙特卡罗算法以概率方式给出结果,可能以一定概率得出错误答案。

9. 答案

解析:舍伍德算法的目标是消除最坏情况和平均情况下的时间复杂度差异,因此一定能够得到正确的解。

10. 答案:D

二、简答题

题干

解析

1.

问题同构指的是两个问题,在数学模型、计算结构和求解方法上具有相同的本质,因此可以用相同的算法框架或思想来解决。同构问题往往具有相似的最优子结构、递归关系或状态转移方程。

举例:矩阵链乘法问题与凸多边形最优三角剖分问题是经典同构问题。两者均可使用动态规划求解,且状态转移方程形式相同。

2.

最优子结构性质是指一个问题的最优解包含其子问题的最优解,即可以通过组合子问题的最优解来构造原问题的最优解。

要求问题具有最优子结构性质的算法设计思想包括:

动态规划:利用最优子结构构建状态转移方程,自底向上或自顶向下求解。

贪心算法:每一步的贪心选择必须满足最优子结构,以确保局部最优能导致全局最优。

分治法:将问题分解为相互独立的子问题,子问题的最优解合并后应为原问题的最优解。

3.

拉斯维加斯算法:总是给出正确解,但运行时间是随机的,期望时间复杂度有界。

举例:随机化快速排序,随机选择枢轴元素,排序结果一定正确,但运行时间与枢轴选择有关,期望时间为O(nlogn)。

蒙特卡罗算法:运行时间固定,但可能给出错误解,错误概率可以通过重复执行控制。

举例:蒙特卡罗算法求解主元素问题。算法随机选择数组中的一个元素作为候选,统计其出现次数,若超过半数则判定为主元素,否则判定为不存在。单次运行时间固定为 O(n),但存在将非主元素误判为主元素的概率(小于 1/2)。通过重复执行 k 次,可将错误概率降至 (1/2)^k 以下,从而以可控的错误概率换取确定且高效的运行时间。

三、算法应用题

3.1 题干

3.1 解析

(1)最少需要进行 n-1 天。

(2)

选手\天数第 1 天第 2 天第 3 天
1234
2143
3412
4321

3.2 题干

3.2 解析

m 矩阵如下:

i \ j1234
10500075008000
20250007500
302500
40

s 矩阵如下:

i \ j1234
11122
2222
333
44

最少数乘次数:8000

最优加括号方案:

3.3 题干

3.3 解析

(1)

(2)最大团:

3.4 题干

3.4 解析

四、算法设计题

题干

解析

算法思想

定义状态数组dp[i]表示以第i个元素结尾的最长上升子序列长度,初始时每个元素自身构成长度为1的子序列,故dp[i]初始化为1。对于每个位置i,遍历其前的所有位置jj < i),若nums[j] < nums[i],说明nums[i]可接在以nums[j]结尾的上升子序列之后,形成更长的子序列,因此更新dp[i] = max(dp[i], dp[j] + 1)。最终,最长上升子序列的长度即为所有dp[i]中的最大值。

伪代码

int LIS(vector<int>& a) { int n = a.size(); if (n == 0) return 0; vector<int> dp(n, 1); // dp[i] 表示以 a[i] 结尾的LIS长度 int maxLength = 1; for (int i = 0; i < n; ++i) { for (int j = 0; j < i; ++j) { if (a[j] < a[i]) { dp[i] = max(dp[i], dp[j] + 1); } } maxLength = max(maxLength, dp[i]); } return maxLength; }

时间复杂度

上述算法使用了两层循环,外层循环遍历每个元素(共 n 次),内层循环对每个元素遍历其前的所有元素(平均 n/2 次),因此总的时间复杂度为,其中 n 为序列长度。

五、论述题

题干

解析

随便写写得了,估计不会考,考就是送分的。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/7 13:32:15

麦橘超然真实项目应用:品牌视觉素材生成全流程

麦橘超然真实项目应用&#xff1a;品牌视觉素材生成全流程 1. 为什么品牌团队开始用“麦橘超然”做视觉生产 你有没有遇到过这样的情况&#xff1a;市场部下午三点发来紧急需求——“明天上午十点要发一条新品预告&#xff0c;配图得有科技感、高级感、还得带点东方韵味”&am…

作者头像 李华
网站建设 2026/2/9 3:14:59

YOLOv13官版镜像亲测分享:几分钟搞定部署

YOLOv13官版镜像亲测分享&#xff1a;几分钟搞定部署 你是不是也经历过—— 花一整天配环境&#xff0c;结果卡在CUDA版本不匹配&#xff1b; 反复重装PyTorch&#xff0c;却始终提示flash_attn找不到GPU&#xff1b; 好不容易跑通demo&#xff0c;换张图又报FileNotFoundErro…

作者头像 李华
网站建设 2026/2/8 9:05:33

ESP32 IDF环境下EEPROM模拟驱动详解

以下是对您提供的博文内容进行 深度润色与重构后的技术文章 。我以一位深耕嵌入式系统多年、常年在一线带团队做ESP32产品开发的工程师视角&#xff0c;重新组织全文逻辑&#xff0c;去除AI腔调与模板化表达&#xff0c;强化工程语感、实战细节和“人话”解释&#xff0c;同时…

作者头像 李华
网站建设 2026/2/9 3:13:42

影视素材修复新招:GPEN镜像提升人脸质量

影视素材修复新招&#xff1a;GPEN镜像提升人脸质量 在影视后期制作中&#xff0c;老片修复、低清素材增强、历史影像抢救等任务常常面临一个核心难题&#xff1a;人脸区域细节模糊、纹理失真、边缘锯齿严重。传统超分方法对复杂遮挡、极端光照、运动模糊等情况效果有限&#…

作者头像 李华
网站建设 2026/2/3 11:30:35

Qwen3-Embedding-4B部署教程:API网关安全配置方案

Qwen3-Embedding-4B部署教程&#xff1a;API网关安全配置方案 1. Qwen3-Embedding-4B介绍 Qwen3 Embedding 模型系列是 Qwen 家族最新推出的专用嵌入模型&#xff0c;专为文本嵌入与排序任务深度优化。它不是通用大语言模型的简单变体&#xff0c;而是基于 Qwen3 密集基础模型…

作者头像 李华
网站建设 2026/2/9 22:24:01

Z-Image-Turbo数据库选型:SQLite vs PostgreSQL部署对比

Z-Image-Turbo数据库选型&#xff1a;SQLite vs PostgreSQL部署对比 Z-Image-Turbo 是一款轻量高效、开箱即用的图像生成工具&#xff0c;其核心优势不仅体现在模型推理速度和画质表现上&#xff0c;更在于整体部署体验的简洁性与可维护性。而支撑这一体验的关键一环&#xff…

作者头像 李华