自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(77)
  • 收藏
  • 关注

原创 算法分析与设计实验:找零钱问题的贪心算法与动态规划解决方案

本文通过一个具体的找零钱问题,详细介绍了贪心算法和动态规划算法的实现过程。贪心算法简单直观,但在某些情况下可能无法得到最优解。而动态规划算法虽然时间复杂度较高,但可以保证得到最优解。在实际应用中,我们可以根据问题的具体特点选择合适的算法。希望本文能够帮助读者更好地理解和掌握这两种重要的算法设计策略。

2025-05-21 08:22:21 471

原创 算法设计与分析题目-贪心法求活动选择问题

本文详细介绍了活动选择问题的贪心算法实现,包括问题描述、算法设计、代码实现和结果分析。通过贪心算法,我们能够有效地解决活动选择问题,找到最优的活动安排方案。希望本文对读者有所帮助。

2025-05-14 08:40:37 900

原创 算法设计与分析题目-最小延迟调度

给定一组等待服务的客户集合 A={1,2,…,n},每个客户 i 的服务时间为 ti​,期望完成时间为 di​。如果客户 i 的服务在 di​ 之前完成,则没有延迟;否则,延迟时间为实际完成时间减去 di​。调度函数 f:A→N 表示客户 i 的服务开始时间,要求所有服务时间区间 (f(i),f(i)+ti​) 互不重叠。目标是找到一个调度方案,使得最大延迟值最小。本文详细介绍了最小延迟调度问题的贪心算法实现,包括问题描述、算法设计、代码实现和算法分析。

2025-05-14 08:22:45 638

原创 算法设计与分析实验题目-字符转换

编辑距离,又被称为 Levenshtein 距离,是指将一个字符串转换为另一个字符串所需的最少单字符编辑操作次数。插入:在字符串中添加一个字符。删除:从字符串中移除一个字符。替换:将字符串中的一个字符替换为另一个字符。例如,将字符串 “kitten” 转换为 “sitting”,编辑距离为 3:将 k 替换为 s,得到 sitten。将 e 替换为 i,得到 sittin。在末尾插入 g,得到 sitting。本文详细介绍了编辑距离的定义、应用场景以及基于动态规划的算法实现。

2025-05-07 09:08:04 723

原创 算法设计与分析实验题-序列对齐

本文介绍了如何使用 C++ 实现一个序列最大对齐得分算法。通过动态规划方法,我们能够高效地计算两个序列在最优对齐方式下的最大得分。这种算法在生物信息学和文本处理领域具有广泛的应用价值。

2025-05-07 09:05:05 613

原创 最优二叉搜索树算法实现解析

空隙结点概率(对应叶节点): 数据结点概率(对应内部节点)目标:建立满足概率分布的最优BST,使得期望搜索代价最小。

2025-04-30 08:47:35 763

原创 算法分析与设计实验九-最大字段和

给定n 个整数(可以为负数)的序列<a1, a2, …【输入形式】输入整数个数n,整数序列。【输出形式】最大字段和及相应子序列。

2025-04-23 08:51:51 171

原创 算法分析与设计实验八-最长公共子序列

给定一个序列,如果其中有些元素(也可能没有)被省略,则我们可以得到该序列的一个子序列。给定一个序列X = <例如,Z = <a, b, f, c>是X = <a, b, c, f, b, c>的子序列。给定两个序列X和Y,问题是求出X和Y的最大长度公共子序列的长度。> ,另一个序列Z满足条件,存在严格递增索引序列I=<【输出形式】两个序列最大长度公共子序列的长度。>,使得对于所有j = 1,2,…【输入形式】两个给定字符串。

2025-04-23 08:51:05 213

原创 算法分析与设计实验七-01背包问题

01背包问题是一个经典的动态规划问题,通过将问题分解为子问题并存储中间结果,可以高效地求解。动态规划的核心在于状态转移方程的设计,以及如何通过回溯找到具体的解。通过本文的讲解和代码实现,读者可以深入理解01背包问题的解决方法,并将其应用到实际问题中。

2025-04-09 08:15:44 823

原创 CCF-CSP认证练习题-第19次-线性分类器

这个问题通过简单的数学计算和集合操作,判断一条直线是否能完美分隔两类点。这种思路是许多机器学习算法(如支持向量机)的基础。虽然这个问题相对简单,但它帮助我们理解了分类问题的核心思想:找到一个决策边界,将不同类别的数据分开。

2025-04-02 09:08:44 409 1

原创 算法设计与分析实验六-矩阵链乘问题

定义 dp[i][j] 表示从矩阵 Ai​ 到 Aj​ 的最小数乘次数。矩阵链乘积问题是一个典型的动态规划问题,通过合理划分子问题并记录最优解,可以高效地找到最小数乘次数和计算次序。动态规划的关键在于状态定义、状态转移方程和计算顺序的设计,这些设计直接影响算法的效率和正确性。通过本文的讲解和代码实现,读者可以深入理解矩阵链乘积问题的解决方法,并将其应用到其他类似问题中。

2025-04-02 08:56:13 669

原创 CSP测试模拟题目火车购票

购票时,一个人可能购一张或多张票,最多不超过5张。如果这几张票可以安排在同一排编号相邻的座位,则应该安排在编号最小的相邻座位。为方便起见,我们用1到100来给所有的座位编号,第一排是1到5号,第二排是6到10号,依次类推,第20排是96到100号。第二行包含n个整数,每个整数p在1到5之间,表示要购入的票数,相邻的两个数之间使用一个空格分隔。请实现一个铁路购票系统的简单座位分配算法,来处理一节车厢的座位分配。对于购票指令p,输出p张车票的编号,按从小到大排序。1) 购2张票,得到座位1、2。

2025-04-01 16:16:03 242

原创 数字图像处理实验报告7-图像压缩编码

它通过将图像分成小块(通常是 8x8 的块),对每块进行 DCT 变换,然后对变换后的系数进行量化和编码,从而实现图像的压缩。基本原理:图像二值化是将灰度图像转换为二值图像的过程,通过设定一个阈值,将图像中的像素值分为两类,即前景和背景。综上所述,图像二值化和 DCT 压缩各有优缺点,适用于不同的应用场景。DCT 压缩通过保留低频系数,在压缩比和图像质量之间取得平衡,适合复杂图像的压缩。压缩比计算:二值化图像的压缩比为 8:1,因为二值化图像每个像素只用 1 位表示,而原始灰度图像每个像素用 8 位表示。

2025-04-01 16:14:44 502

原创 数字图像处理实验6-图像复原

实验题目:图像复原实验目的:理解基于均值滤波器的图像复原原理,掌握其实现方法;理解基于顺序统计滤波器的图像复原原理,掌握其实现方法;理解基于带阻滤波器的图像复原原理,掌握其实现方法;对实验结果进行分析,得出实验结论并撰写实验报告。实验环境(硬件和软件)PC机、 Matlab软件实验内容:(1)基于均值滤波器的图像复原。(2)基于顺序统计滤波器的图像复原。(3)基于带阻滤波器的图像复原。实验(1)步骤(1)新建程序文件(2)编写程序如下(3)运行程序实验(2)步骤。

2025-04-01 16:11:37 379

原创 CSP测试真题模拟-交通规划

现在,请你为G国国王提供一个方案,将现有的一部分铁路改造成高速铁路,使得任何两个城市间都可以通过高速铁路到达,而且从所有城市乘坐高速铁路到首都的最短路程和原来一样长。对于100%的评测用例,1 ≤ n ≤ 10000,1 ≤ m ≤ 100000,1 ≤ a, b ≤ n,1 ≤ c ≤ 1000。对于20%的评测用例,1 ≤ n ≤ 10,1 ≤ m ≤ 50;对于50%的评测用例,1 ≤ n ≤ 100,1 ≤ m ≤ 5000;输出一行,表示在满足条件的情况下最少要改造的铁路长度。

2025-03-29 22:48:08 235

原创 CSP202305-1 重复局面

问题抽象能力:将棋盘转化为可比较的字符串数据结构应用:哈希表的熟练使用工程优化意识:IO加速、内存预分配。

2025-03-29 16:29:39 644

原创 C++算法深度解析:快速排序的实现、分析与优化

快速排序的基本思想是通过一趟排序将待排序的数据分割成独立的两部分,其中一部分的所有数据都比另一部分的所有数据要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。:重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准的后面(相同的数可以到任一边)。:取首元素、中间元素和尾元素,比较它们的大小,然后将中间大小的元素与尾元素交换。在递归调用中,如果子问题的规模足够小,可以考虑使用尾递归优化来减少递归调用的开销。

2025-03-27 17:43:02 979 3

原创 在使用JupyterNoteBook中下载Pymsql组件时可能遇到的情况

版本是10.0.1,而当前最新的版本是21.3.1。这是一个比较老的版本了,可能会导致一些兼容性问题,或者无法安装某些新版本的库。不过,这个提示并不影响你安装。输入以下两行代码即可解决问题。这是因为系统中已经安装了。,只是提醒如果后续要使用。的功能,可能需要单独安装。最后再使用pip下载。

2025-03-27 13:13:36 412 2

原创 CCF-CSP认证题目练习及其题解(4

【代码】CCF-CSP认证题目练习及其题解(4。

2025-03-26 21:08:37 330 2

原创 算法分析与设计课堂实验(5 分支策略3

输入将包含一个测试用例。每个测试用例仅有一行,包含一个整数。Fibonacci序列的另一个公式是。否则,省略任何前导零(即,输出。在Fibonacci数列中,在10进制表示下的最后四位。的最后四位都是零,则输出。对于每个测试用例,输出。

2025-03-26 21:07:27 218

原创 CCF-CSP认证题目练习及其题解(5

在图像编码的算法中,需要将一个给定的方形矩阵进行Z字形扫描(Zigzag Scan)。请实现一个Z字形扫描的程序,给定一个n×n的矩阵,输出对这个矩阵进行Z字形扫描的结果。输出一行,包含n×n个整数,由空格分隔,表示输入的矩阵经过Z字形扫描后的结果。输入的第二行到第n+1行每行包含n个正整数,由空格分隔,表示给定的矩阵。1≤n≤500,矩阵元素为不超过1000的正整数。输入的第一行包含一个整数n,表示矩阵的大小。对于下面的4×4的矩阵,

2025-03-26 21:02:55 244

原创 CCF-CSP认证题目练习及其题解(3

具体的,对于小H来说有n个不相交的时间段[a1,b1],[a2,b2]...[an,bn]在装车,对于小W来说有n个不相交的时间段[c1,d1],[c2,d2]...[cn,dn]在装车。对于所有的评测用例,1 ≤ n ≤ 2000, ai < bi < ai+1,ci < di < ci+1,对于所有的i(1 ≤ i ≤ n)有,1 ≤ ai, bi, ci, di ≤ 1000000。接下来n行每行两个数ai,bi,描述小H的各个装车的时间段。输入的第一行包含一个正整数n,表示时间段的数量。

2025-03-19 12:00:00 188

原创 算法设计与分析实验四快速排序

【问题描述】给定n个元素,快速排序算法实现从小到大排序。【输入形式】第一行输入元素个数n,第二行输入n个元素。【输出形式】按小到大排好序的元素。

2025-03-19 08:12:58 100

原创 CCF-CSP认证题目练习及其题解(2)

字典序大小的定义:对于两个不同的价格序列(a1, a2, ..., an)和(b1, b2, b3, ..., bn),若存在i (i>=1), 使得ai<bi,且对于所有j<i,aj=bj,则认为第一个序列的字典序小于第二个序列。注意,编号为1的商店只有一个相邻的商店2,编号为n的商店只有一个相邻的商店n-1,其他编号为i的商店有两个相邻的商店i-1和i+1。给定第二天各个商店的菜价,可能存在不同的符合要求的第一天的菜价,请找到符合要求的第一天菜价中字典序最小的一种。

2025-03-18 22:30:40 314

原创 CCF-CSP认证练习题及其题解

小明到达路口时,这个红绿灯已经变为红灯,还剩 11 秒。小明的学校也安装了“智慧光明”终端,小明想利用这个终端给出的信息,估算自己放学回到家的时间。一次放学的时候,小明已经规划好了自己回家的路线,并且能够预测经过各个路段的时间。,此处的红绿灯状态是红灯、黄灯、绿灯,且倒计时显示牌上显示的数字是 t,此处 t 分别不会超过 r、y、g。输入的第一行包含空格分隔的三个正整数 r、y、g,表示红绿灯的设置。这三个数均不超过 106。输入的第二行包含一个正整数 n,表示小明总共经过的道路段数和路过的红绿灯数目。

2025-03-18 21:28:03 278

原创 算法分析与设计实验三-分治策略②

一个测试用例占一行,第一个整数表示数组的长度,后面紧跟者数组中的各个整数元素,中间都用一个空格分开。对于给定的数组A,计算其逆序对的总数。输出一个整数,表示逆序对的个数。每个数字A[i]的范围为。输入包含1组测试用例。

2025-03-12 08:13:16 270

原创 算法分析与设计实验三-分治策略①

问题描述】给定含有S个元素的多重集合S(元素未排序),每个元素在S中出现的次数称为该元素的重数。多重集S中重数最大的元素称为众数。例如,S={2,1,2,3,2,5}。多重数S的众数是2,其重数为3。对于给定的由n个自然数组成的多重集S,计算S的众数及其重数。【输入形式】第1行为多重数集S中元素个数n;接下来的n行中,每行有一个自然数。【输出形式】输出文件有2行,第1行是众数,第2行是重数。

2025-03-12 08:11:43 147

原创 大数据平台技术课程实验报告实验一:开发与运行环境安装

在这些信息中,我们需要修改窗口下部的 Maven home directory 、 Usersettings file 和 Local repository 这3个信息,将 Maven home directory 修改为所安装的 Maven 的路径,将 User settings file 修改为 Maven 安装文件 conf 目录中的 settings . xml 文件,将 Local repository 修改为所设置的本地仓库的路径。cd ~/.ssh //进入用户根目录下的。

2025-03-07 12:00:00 729

原创 数据分析和可视化课程实验报告一(数据分析基础)

实验题目: 数据分析基础 实验目的:1.掌握 Anaconda与 Jupyter Notebook的安装与使用方法 2.掌握 NumPy 创建数组、矩阵的方法以及常用的方法 3.掌握 NumPy 统计分析方法 实验环境(硬件和软件)1.硬件环境:普通PC机 2.软件环境:Windows操作系统、Jupyter Notebook

2025-03-06 18:30:34 691

原创 大数据平台技术课程实验报告实验二:HDFS操作实践

【代码】大数据平台技术课程实验报告实验二:HDFS操作实践。

2025-03-06 18:26:33 1766

原创 Henu祖传算法设计与分析课堂实验(2)

开始时,在塔座 A 上有一叠共 n 个圆盘,这些圆盘自下而上, 由大到小地叠在一起。,n,奇数号圆盘着蓝色,偶数号圆盘着红色,如图所示。【输出形式】每一行由一个正整数 k 和 2 个 字符 c1 和 c2 组成,表示将第 k 个圆盘从塔座 c1 移到塔座 c2 上。规则(4):在满足移动规则(1)-(3)的前提下,可将圆盘移至 A,B,C 中任一塔座上。【问题描述】给定n个元素,设计算法实现从小到大排序。【输入形式】第一行元素个数n,第二行输入n个元素。【输入形式】输入圆盘个数n。

2025-03-05 08:34:56 153

原创 数据结构(纯C语言)习题 2(链表版)

【代码】数据结构(纯C语言)习题 2(链表版)

2025-03-04 20:35:48 76

原创 数据结构(纯C语言版)习题(1)

题目:通过键盘输入整数,直到遇到一个负数为止,该负数不考虑在内,求所输整数的合、平均值、最大值和最小值,并在屏幕上输出。输出:总和 = 35;多个数的求和、平均、最大值、最小值。输入:1、3、5、10、16、-1。

2025-03-04 19:51:41 374

原创 数据结构(纯C语言版)习题 (2)

题目:通过键盘,分别输入两个数据元素类型为正整数的集合A和B,以负数输入为结束条件,输出两个集合的交、并、差。从程序完善性上考虑,集合元素输入时,要有检查元素重复的功能。集合可以用数组也可以用链表存储。输出 A交B={3, 4, 5} A并B={1,2,3,4,5,6,7} A-B={1, 2}输入: A={1,2,3,4,5} B={3,4,5,6,7}

2025-03-04 19:50:08 378

原创 错误信息表明 /etc/sudoers.d/README 文件的所有者不是 root 用户(UID 0),而是 UID 1000。这会导致 sudo 命令无法正常工作(已解决)

在恢复菜单中,选择(进入 root shell 提示符)。

2025-02-28 19:27:01 168

原创 Educator头歌:计算机系统基础-缓冲区溢出攻击 - 访问过程参数

本实验中缓冲区溢出攻击的目标是一个名为bufbomb二进制可执行程序,实验的任务是设计、构造合适的攻击字符串(“exploit string”),当输入攻击字符串至目标程序bufbomb后,通过造成缓冲区溢出改变目标程序的行为,达成预定的实验目标。// BUFFER_SIZE是预定义的一个正整数常量Gets(buf);return 1;

2024-12-11 21:29:52 795

原创 Educator头歌:计算机系统基础-缓冲区溢出攻击 - 初步

本实验中缓冲区溢出攻击的目标是一个名为bufbomb二进制可执行程序,实验的任务是设计、构造合适的攻击字符串(“exploit string”),当输入攻击字符串至目标程序bufbomb后,通过造成缓冲区溢出改变目标程序的行为,达成预定的实验目标。// BUFFER_SIZE是预定义的一个正整数常量Gets(buf);return 1;

2024-12-11 21:27:34 325

原创 Educator头歌:计算机系统基础-整数的乘法指令

【代码】Educator头歌:计算机系统基础-整数的乘法指令。

2024-12-10 23:58:47 189

原创 Educator头歌:计算机系统基础-加减运算指令

②溢出标志位代表着有符号数的溢出,当最高位进位状态异或次高位进位状态是 1 的时候,就产生溢出;④符号标志位意味着操作产生的结果是 负数。如果目的操作数的最高有效位是 1,那么该位置为 1。INC (增加) DEC (减少)指令分别表示寄存器/内存当中的操作数+1/-1。①进位标志位代表着无符号数溢出,就是当最高位向更高位有进位或者借位时,就溢出;将长度相同的源操作数和目的操作数相加,存放在目的操作数当中。长度相同的源操作数和目的操作数,从目的操作数中减去源操作数。二者不会影响进位标志位。

2024-12-10 23:57:34 516

原创 Python123_Python程序语言设计基础_程序的控制结构

例如:当n为3时,有1^3 + 5^3 + 3^3 = 153,153即是n为3时的一个自幂数,3位数的自幂数被称为水仙花数。自幂数是指一个 n 位数,它的每个位上的数字的 n 次幂之和等于它本身。请输出所有4位数的四位玫瑰数,按照从小到大顺序,每个数字一行。

2024-12-07 22:37:35 308 2

Java面向对象程序设计第八章全部例题代码,可使用Idea导入

Java面向对象程序设计第八章全部例题代码,可使用Idea导入

2024-11-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除