- 博客(16)
- 收藏
- 关注
原创 图的m着色问题
最优前缀码1.问题2.解析3.设计核心代码实现:void backtrack(int cur){ if(cur>n) { for(int i=1;i<=n;i++) { printf("%d ",color[i]); } cou++; printf("\n"); } else { for(int i=1;i<=m;i
2021-05-31 21:04:23
140
原创 最优前缀码
最优前缀码1.问题2.解析3.设计核心代码实现:void HuffmanTree(int n){ int a,b,c,d; for (int i=0;i<n*2-1;++i){ huffman[i].weight=0; huffman[i].parent=-1; huffman[i].leftchild=-1; huffman[i].rightchild=-1; } for (int i
2021-05-24 20:02:15
132
原创 装载问题(0-1背包问题)
0-1背包问题1.问题2.解析0-1背包问题:3.设计核心代码实现:0-1背包问题:int knapSack(int W, int wt[], int val[], int n){ int i, w; int K[n+1][W+1]; for (i = 0; i <= n; i++) { for (w = 0; w <= W; w++) { if (i==0 || w==0)
2021-05-17 15:18:56
149
原创 LCS算法和背包问题
LCS算法和背包问题1.问题2.解析LCS算法:背包问题:3.设计核心代码实现:LCS算法:int main() { string a, b; getline(cin, a); getline(cin, b); for (int i = 1; i <= a.length(); i++) { for (int j = 1; j <= b.length(); j++) { if (a[i - 1] ==
2021-05-10 17:30:07
153
原创 矩阵链乘法(动态规划)
矩阵链乘法(动态规划)1.问题2.解析动态规划法:3.设计核心代码实现:void MartixChainMultiply(){ int q; for(int i=1;i<=n;i++){ dp[i][i] = 0; } for(int l=2;l<=n;l++){ for(int i=1;i<=n-l+1; i++){ int j = i+l-1; dp[i
2021-04-26 18:44:59
135
原创 动态规划解决投资问题
动态规划解决投资问题1.问题2.解析递推公式:3.设计核心代码实现:int bestInvest(int a[M][N], int f[M][N], int n, int money){ for(int i=1; i<=n; i++){ for(int j=0; j<=money; j++){ a[i][j] = 0; for(int k=0; k<=j; k++){
2021-04-25 16:12:53
220
原创 选第k小元素:特定分治策略
选第k小元素:特定分治策略1.问题设L是n个元素的集合,从L中选取第K小的元素,其中1<=k<=n2.解析分治法求解:3.设计核心代码实现:int select(int arr[],int l,int h ,int k){ int mid[M]; int size = h-l+1; if(size <= 5){ Sort(arr, l, size-1); return arr[k-1]; } els
2021-04-19 16:11:10
109
原创 用分治法解最近对问题
用分治法解最近对问题1.问题设p1=(x1,y1), p2(x2,y2), …,pn=(xn,yn)是平面上n个点构成的集合S,找出集合S中距离最近的点对。2.解析分治法求解:① 划分将集合S分成两个大小基本相等的子集S1和S2② 求解子问题递归地求解两个子问题③ 合并问题的解可能出现三种情况Ⅰ.组成S的最近点对的2个点都在S1中Ⅱ.组成S的最近点对的2个点都在S2中Ⅲ.组成S的最近点对的2个点分别在S1和S2中比较三种情况下最近点对,取三者之中较小者为原问题的解3.设计核心
2021-04-12 16:02:55
219
原创 二分归并排序
二分归并排序1.问题二分归并排序:对n个不同的数构成的数组A[1…n]进行排序,其中n=2^k2.解析其算法核心思想就是把一个大问题在不改变前提的条件下拆分为若干个小问题,实现分而治之。该算法是采分治法的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二分归并。图解:3.设计核心代码实现:int mergeList(int a[], int left, int mid, int right,
2021-03-29 16:00:53
277
原创 两种检索算法
写出两种检索算法,在一个排好序的数组T[1…n]中查找x1.问题写出两种检索算法:在一个排好序的数组T[1…n]中查找x,如果x在T中,输出x在T的下标j;如果x不在T中,输出j=0.按实验模板编写,“分析”部分仅给出复杂度结果即可。2.解析顺序查找:按照数组长度,一个个查找,直到找到关键词后返回该关键词下标,找不到则返回0二分查找:将数据不断进行对半分割,并检查每个分区的中间元素3.设计顺序查找:for(int i=0; i<len; i++){ if(array[i]==x){
2021-03-22 16:23:09
131
原创 用Floyd算法求解最短距离,用Dijkstra算法求点到点的最短路径
用Floyd算法求解最短距离,用Dijkstra算法求点到点的最短路径1.问题(1)用Floyd算法求解下图各个顶点的最短距离。写出Floyd算法的伪代码和给出距离矩阵(顶点之间的最短距离矩阵)。(2)对于下图使用Dijkstra算法求由顶点a到顶点h的最短路径。2.解析Floyd算法:从任意一条单边路径开始。所有两点之间的距离是边的权,如果两点之间没有边相连,则权为无穷大。对于每一对顶点 u 和 v,看看是否存在一个顶点 w 使得从 u 到 w 再到 v 比已知的路径更短。如果是更新它
2021-03-16 19:45:54
381
原创 用Prim和Kruskal算法构造最小生成树
用Prim和Kruskal算法构造最小生成树1.问题(1)举一个实例,画出采用Prim算法构造最小生成树的过程,并按实验报告模板编写算法。(2)举一个实例,画出采用Kruskal算法构造最小生成树的过程,并按实验报告模板编写算法。2.解析Prim算法:在带权连通图中,每次找与之连线权值最小的顶点,将该点加入最小生成树集合中并构造,直到最后得到一颗最小生成树。Kruskal算法:对于所有的边,每次取一条最短的边(不能重复取),判断它的两个端点是否已经在一个连通块中了。如果是,那么取下一条边;如果没
2021-03-08 21:42:39
541
原创 Java多态
一、什么是多态所谓多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。因为在程序运行时才确定具体的类,这样,不用修改源程序代码,就可以让引用变量绑定到各种不同的类实现上,从而导致该引用调用的具体方法随之改变,即不修改程序代码就可以改变程序运行时所绑定的具体代码,让程序可以选择多个运行状态,这就是多态性。对于面向对象而
2021-01-04 12:21:51
123
原创 Java抽象类和接口
一、抽象类1.抽象类的基本概念普通类是一个完善的功能类,可以直接产生实例化对象,并且在普通类中可以包含有构造方法、普通方法、static方法、常量和变量等内容。而抽象类是指在普通类的结构里面增加抽象方法的组成部分。那么什么叫抽象方法呢?在所有的普通方法上面都会有一个“{}”,这个表示方法体,有方法体的方法一定可以被对象直接使用。而抽象方法,是指没有方法体的方法,同时抽象方法还必须使用关键字abstract做修饰。而拥有抽象方法的类就是抽象类,抽象类要使用abstract关键字声明。//有抽象方法的
2021-01-03 23:48:27
143
原创 Java正则表达式
一、正则表达式简介正则表达式是使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。爬虫中解析html可以使用正则来方便的提取信息二、正则表达式匹配规则模式描述\w匹配字母、数字、下划线\W匹配非字母、数字、下划线\s匹配任意空白字符,相当于[\t\n\r\f]\S匹配任意非空字符\d匹配任意数字,相当于[0-9]\D匹配非数字的字符\A匹配字符串开头\Z匹配字符串结尾,如果存在换行,只匹配到换行前的结束字符串\z
2021-01-03 23:15:23
414
原创 Eclipse构建Github
第一步:在Github上建立一个仓库第二步:新建一个文件夹,打开cmd控制台,打开新建文件夹,输入“git clone+仓库地址”来克隆到本地,会发现文件夹中多了一个新文件夹,为仓库名。在这里我的新文件夹名为github此处需要额外下载一个插件用来执行clone命令,链接:https://sl-m-ssl.xunlei.com/h5/page/download-share/index.html?entry=link&appType=PC&videobtindex=-1&stor
2020-09-16 13:14:08
1375
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人