自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 实验 矩阵连乘问题

1. 问题:给定 n 个矩阵 A1,A2,..., An,矩阵Ai的形状为pi-1 * pi,要求给出A1,A2,..., An的运算次序,使得求解过程需要的乘法次数最少。2. 分析所实现算法的时间复杂度,得出你的结论。1. 实现矩阵连乘问题的动态规划算法;2. 理解动态规划法的设计思想。实验4 矩阵连乘问题。

2023-12-05 14:51:16 105 10

原创 图着色问题

## 时间和空间复杂度分析- 时间复杂度:该贪心算法的时间复杂度为 O(V^2),其中 V 为图的顶点数。// 选择一个未被使用的颜色给当前顶点着色。- 空间复杂度:该算法的空间复杂度为 O(V),主要用于存储每个顶点的颜色和相邻顶点已被使用的颜色。图的着色问题是一个经典的图论问题,涉及到图的顶点着色使得相邻顶点具有不同颜色的问题。2. 对于每个顶点,选择一个未被相邻顶点使用的颜色进行着色。- 对于当前顶点,遍历其相邻顶点,记录已被使用的颜色。2. 对图的每个顶点进行遍历,按顺序给每个顶点着色。

2023-11-28 14:19:55 231 9

原创 最优合并问题

/ 每个序列的长度和编号。// 这里可以根据需要设置合并后的序列编号。// 合并序列的函数int mergeSequences(Sequence sequences[], int k) {// 交换两个序列void swap(Sequence *a, Sequence *b) {int k = 4;// 从最小堆中取出最小长度的序列。// 最小堆的向下调操作。// 最小堆的数据结构。

2023-11-27 11:44:08 85 4

原创 贪心算法-实验: 最优装载问题

贪心算法-实验: 最优装载问题 一、实验目的 1. 掌握各类数据结构的操作;2. 掌握用c++语言描述与实现算法的方法;3. 理解算法的概念,掌握算法复杂度分析技术;二、实验内容 1. 运用C或C++语言,按要求完成算法实现;2. 对所设计的算法采用大O符号进行时间复杂性分析;三、实验任务 设有重量为(4,6,3,5,7,2,9)的7个集装箱,轮船的载重为26,求能够装载的集装箱的最大 数量?

2023-11-21 14:43:28 781 4

原创 贪婪算法:谣言传播 作业调度

设计一个贪婪算法,保证在每个人都能获得所有谣言的条件下,使发送的信息 数最小。要求: (1)安排一个调度计划,使得所有的作业在系统中花费的时间最小 (一个作业在系 统中花费的时间是该作业用于等待的时间和用于运行的时间的总和。- 对于第二个问题,该贪婪算法并是能产生最优解,因为它只考虑了单个作业的运行时间,而没有考虑作业之间的关联性。senders.update(unsent_rumors) # 更新已发送谣言的人。- 对于第一个问题,贪婪算法可以保证每个人都能获得所有谣言的条件下,使发送的信息数最小。

2023-11-14 14:34:06 198 5

原创 倒置问题:A[0…n-1]是⼀个n个不同实数构成的数组,如果 i<j, 但是 A[i] >A[j],则这对元素(A[i],A[j])被称为⼀个倒置。设计⼀个O(nlogn)算法来计算数组中的倒置数

我们比较 `arr[i]` 和 `arr[j]` 的大小,如果 `arr[i] <= arr[j]`,则将 `arr[i]` 存入临时数组,并将 `i` 和 `k` 分别加 1;3. 函数 `merge()` 接受一个数组 `arr`、临时数组 `temp`、左边界 `left`、中间位置 `mid` 和右边界 `right`,返回值为横跨左右两部分的逆序对数量。在函数内部,我们维护三个指针 `i`、`j` 和 `k`,分别指向左半部分、右半部分和临时数组的当前位置。

2023-10-31 15:37:20 445 1

原创 交替放置的碟子

一、实验目的1. 掌握各类数据结构的操作;2. 掌握蛮力法的设计与实现方法;3. 掌握算法复杂度分析技术;二、实验内容1. 运用C++语言,按要求完成算法实现;2. 对所设计的算法采用大O符号进行时间复杂性分析;三、实验任务问题描述:假设有数量为 2n 的一排碟子,n 黑 n 白交替放置:黑、白、黑、白、黑、......。现在要把黑碟子都放在右边,白碟子都放在左边,但只允许通过互换相邻碟子的位置来实现,为该谜题写个算法,并确定该算法需要执行的换位次数

2023-10-10 15:01:48 188

原创 ⼆分搜索技术

上述分析是基于已排好序的数组进行搜索,排序的时间复杂度是O(nlogn),这部分时间并未包含在查找算法的时间复杂度中。主函数中的循环读取输入的用例数量,并根据输入的k值生成随机数组,并输出找到元素x的位置和比较次数。通过这个实验,我们能够体会到算法的时间复杂度是如何影响运行时间的,例如二分搜索这种时间复杂度为O(logn)的算法能够大大提高查找效率。3. 掌握用C++语言描述和实现算法的方法:通过实现这个算法,我们能够加深对C++语言的熟悉程度,并学会如何用C++语言描述和实现具体的算法。

2023-09-26 15:01:49 52

原创 4123123

class Tiger: def __init__(self, speed, enage, id): self.speed = speed self.enage = enage self.id = id def __gt__(self, other): return self.enage > other.enage def __add__(self, other): new_speed = s

2023-06-19 15:35:19 55 2

空空如也

空空如也

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

TA关注的人

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