- 博客(12)
- 收藏
- 关注
原创 实验报告12
1.问题. 图的m着色问题。给定无向连通图G和m种颜色,用这些颜色给图的顶点着色,每个顶点一种颜色。如果要求G的每条边的两个顶点着不同颜色。给出所有可能的着色方案;如果不存在,则回答“NO”。 2.解析 可以利用回溯法解决问题。用图的邻接矩阵a表示无向连通图G = (V , E)。若(I,j)属于图的边集,则a[i][j] = 1,否则a[i][j] = 0。整数1~m表示m种不同的颜色。顶点i所着的颜色用x[i]表示。数组x[1:n]是问题的解向量。问题的解空间就是这些解向量的集合。该问题的解空间可以表示
2021-05-31 16:06:11 163
原创 实验报告11
1.问题. 2.解析 3.设计 //根据哈夫曼树T求哈夫曼编码表H void CharSetHuffmanEncoding(HuffmanTree T, HuffmanCode H) { int c, p;//c和p分别指示T中孩子和双亲的位置 char cd[n + 1];//临时存放编码 int start;//指示编码在cd中的起始位置 cd[n] = ‘\0’;//编码结束符 getchar(); for (int i = 0; i < n; i++) {//依次求叶子T[i]的编码 H
2021-05-24 19:56:36 89
原创 实验报告10
1.问题 2.解析 (2)代价函数:当搜索进行到此结点时,以后无论怎么样选择此结点的后代,目标函数所能达到最大值不会超过代价函数的值。 3.设计 上式是代价函数;下式是总重量 4.分析 5.源码 ...
2021-05-17 16:28:58 93
原创 实验报告9
1.问题 LCS算法和背包算法,特别要求举例时采用不同于讲义的数据进行推导. 设X和Y是两个序列,如果Z既是X的子序列,也是Y的子序列,则称Z是X和Y的公共子序列,求X和Y的最长公共子序列。 2.解析 Xi=<x1,x2,…,xi> Yj=<y1,y2,…,yj> Zk=<z1,z2,…,zk> 如果Zk是Xi和Yj的最长公共子序列 (1)xi = yj,那么zk = xi = yj,Zk-1是Xi-1和Yj-1的最长公共子序列 (2)xi ≠ yj,那么zk ≠ xi
2021-05-10 16:18:58 92
原创 实验报告8
实验报告 课程名称 《算法分析与设计》 实验日期 2021 年 4 月26日 学生姓名 吕静怡 所在班级 计算机194 学号 2019212212145 1.问题. 设A1,A2,…An为n个矩阵的序列,其中Ai为Pi-1×Pi阶矩阵,这个矩阵链的输入用向量P=<P0,P1,…,Pn>给出 给定向量P,确定一种乘法次序,使得基本运算的总次数达到最小 例如P=<10,20,30
2021-04-26 16:03:54 198
原创 实验报告7
课程名称 《算法分析与设计》 实验日期 2021 年 4 月25日 学生姓名 吕静怡 所在班级 计算机194 学号 2019212212145 1.问题. 2.解析 递推公式: 设Fk(x)表示x万元投给前k个项目的最大效益,k=1,2,…,n,x=1,2,…,m 说明:第k步,前后共分配x万元 分配给第k个项目为xk; x-xk万元,分配给前k-1个项目 证明满足优化原则: 优化原则:
2021-04-26 14:05:39 120
原创 实验报告6
课程名称 《算法分析与设计》 实验日期 2021 年 4 月12 日 学生姓名 吕静怡 所在班级 计算机194 学号 2019212212145 1.问题. n(1≤n≤100)个正整数(无序的)中,找出第k(k≤n)小的数。注意,第k小的数意味着从小到大排在第k位置的数。 2.解析 k=|S1|+1,m*就是所要找的第k小的数;以m为划分标准后,比m小的有|S1|个,如果恰巧,k=|S1|
2021-04-19 16:29:03 186
原创 实验报告5
课程名称 《算法分析与设计》 实验日期 2021 年 4 月12 日 学生姓名 吕静怡 所在班级 计算机194 学号 2019212212145 实验名称 实验地点 同组人员 1.问题. 最近对问题要求在包含有n个点的集合S中,找出距离最近的两个点。 2.解析 该题直观的解决方法便是Brute Force(暴力求解),将问题简化:
2021-04-19 13:51:35 151
原创 实验报告4
课程名称 《算法分析与设计》 实验日期 2021 年 4 月5 日 学生姓名 :吕静怡 所在班级 : 计算机194 学号 : 2019212212145 1.问题. 二分归并排序:对n个不同的数构成的数组A[1…n]进行排序,其中n=2^k 2.解析 二分归并排序,顾名思义,先二分再排序,将一个数组不断二分成最小单元,再进行归并得到排序好的数组。如图所示: 3.设计 void merge(int arr[],int left,in
2021-04-11 21:57:51 79
原创 实验报告3
课程名称 《算法分析与设计》 实验日期 2021 年 3 月22 日 学生姓名 吕静怡 所在班级 计算机194 学号 2019212212145 实验名称 实验地点 同组人员 1.问题. 写出两种检索算法:在一个排好序的数组T[1…n]中查找x,如果x在T中,输出x在T的下标j;如果x不在T中,输出j=0。 2.解析 顺序查找:
2021-03-22 16:02:41 103
原创 实验报告2
实验报告 课程名称 《算法分析与设计》 实验日期 2021 年 3 月 15 日 学生姓名 吕静怡 所在班级 计算机194 学号 2019212212145 实验名称 实验地点 同组人员 1.问题 (1)用Floyd算法求解下图各个顶点的最短距离。写出Floyd算法的伪代码和给出距离矩 阵(顶点之间的最短距离矩阵),按实验报
2021-03-19 21:02:25 99
原创 实验报告1
实验报告1 课程名称 《算法分析与设计》 实验日期 2021 年 3 月 8 日 至 2021 年 3 月 10 日 学生姓名 : 吕静怡 所在班级 : 计算机194 学号 :2019212212145 1.问题. 举一个实例,画出采用Prim算法构造最小生成树的过程,并按实验报告模板编写算法。 举一个实例,画出采用Kruskal算法构造最小生成树的过程,并按实验报告模板编写算法。 2.解析 两种方法均是找到最小生
2021-03-10 16:07:11 208
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人