自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 圆排列问题

问题给定n个大小不等的圆c1,c2,…,cn,现要将这n个圆排进一个矩形框中,且要求各圆与矩形框的底边相切。圆排列问题要求从n个圆的所有排列中找出有最小长度的圆排列。例如,当n=3,且所给的3个圆的半径分别为1,1,2时,这3个圆的最小长度的圆排列如图所示。其最小长度为2+4√2。如图:解析圆排列问题的主要思路是排列问题,通过建立排列树,再进行回溯剪枝,得出最优排列。每次修改一个圆的排列位置,若修改后的排列长度变小,则在当前排列的前提下继续排列,否则回溯。每次排列后,相切情况下圆的X坐标计算公

2020-05-27 19:12:09 1940

原创 图的m着色问题(回溯、分支限界)

问题给定无向连通图G和m种颜色,用这些颜色给图的顶点着色,每个顶点一种颜色。如果要求G的每条边的两个顶点着不同颜色,给出所有可能的着色方案;如果不存在,则回答“NO”。解析考虑所有的图,讨论在至多使用m种颜色的情况下,可对一给定的图着色的所有不同方法。通过回溯的方法,不断的为每一个节点着色,在前面n-1个节点都合法的着色之后,开始对第n个节点进行着色,这时候枚举可用的m个颜色,通过和第n个节点相邻的节点的颜色,来判断这个颜色是否合法,如果找到那么一种颜色使得第n个节点能够着色,那么说明m种颜色的方案

2020-05-26 20:00:24 2075

原创 最优前缀码

问题:给定字符集C= {x1,x2,…,xn}和每个字符的频率f(xi),求关于C的一个最优前缀码。解析构造最优前缀码的贪心算法就是哈夫曼算法实例:{5, 5, 10, 10, 10, 15, 20, 25}算法计算结果分析O(nlogn)频率排序;for 循环 O(n),插入操作 O(logn),算法时间复杂度是 O(nlogn)度 O(nlogn+n)=O(nlogn)github源码地址参考...

2020-05-12 21:26:18 1320

原创 相容问题——贪心策略

问题有n项活动申请使用同一个礼堂,每项活动有一个开始时间和一个截止时间。如果任何两个活动不能同时举行,问如何选择这些活动,从而使得被安排的活动数量达到最多。设S={1,2,…,n}为活动的集合,si和fi分别为活动i的开始和截止时间,i=1,2,…,n定义:活动i和j相容<==>si≥fj或sj≥fi,i≠j求S最大的两两相容的活动子集A。解析方法:把活动按照截止时间从小到...

2020-04-28 20:20:48 799

原创 最长公共子序列——动态规划

定义:设X和Z是两个序列,其中X=<x1,x2,…,xm>,Z=<z1,z2,…,zk>,如果存在X的元素构成的按下标严格排序递增序列<xi1,xi2,…,xik>,使得xij=zj,j=1,2,…,k,那么Z是X的子序列,Z含有的元素个数,称为子序列的长度。定义:设X和Y是两个序列,如果Z既是X的子序列,也是Y的子序列,则称Z是X和Y的公共子序列。问题:最...

2020-04-21 20:55:36 189

原创 矩阵连乘法——动态规划

问题:设A1,A2,……,An为n个矩阵的序列,其中Ai为Pi-1×Pi阶矩阵,这个矩阵链的输入用向量P=<P0,P1,……,Pn>给出。给定向量P,确定一种乘法次序,是的具备运算的总次数达到最小。解析Ai…j:表示矩阵链相乘的子问题AiAi+1…Aj;m[i…j]:表示得到乘积Ai…j所用的最少基本运算次数;假定,最后一次相乘发生在矩阵链Ai…k和Ak+1…j之间,即Ai...

2020-04-14 20:57:48 643

原创 投资问题(动态规划)

问题设m元钱,n项投资,函数fi(x)表示将x元投入到第i项项目中所产生的效益,i=1,2,3…n;问:如何分配这m元钱,使得投资的总效益最高?解析假设分配给第 i 个项目的钱数是 xi,问题描述为:目标函数:max{f1(x1)+f2(x2)+…+fn(xn)}约束条件:x1+x2+…+xn=m,xi∈N;设Fk(x)表示x元投给前k个项目的最大效益,k=1,2,…,n,x=1,2...

2020-04-07 19:31:07 3146

原创 选第k小元素:特定分治策略

选第k小元素:特定分治策略问题:在一个数组S中查找第k小的元素并输出。解析如果|S1|等于k,则m*就是所要找的第 k 小的数;如果|S1|大于等于k,归约为在S1中找第 k1 小的子问题,k 在子问题中相对位置不变,即k=k1如果|S1|小于等于k,归约为在S2中找 k2 位置的子问题,k2 相对于 S2 子问题和 k 相对于 S 的关系,即 k2= k-|S1|-1。(在 S 中...

2020-03-31 21:32:48 530

原创 最近点对问题

最近点对问题问题描述:平面上有n个点P1,P2,…,Pn,n>1,Pi的直角坐标为(Xi,Yi),i=1,2,…,n.求距离最近的两个点及他们之间的欧几里得距离。解析当2≤n≤3时,问题就可以通过蛮力算法解决。当n>3时,可以利用点集在x轴方向上的中位数m,在该处作一条垂线,将点集分成大小分别为[n/2]和[n/2]的两个子集P1和Pr。即使得其中[n/2]个点位于显得左边或线上...

2020-03-25 14:05:01 1277

原创 二分归并排序

问题二分归并排序:对n个不同的数构成的数组A[1…n]进行排序,其中n=2^k解析选择中间的数,把数组对半划分。分别对子问1和子问题2进行排序,最后把这两个排好序的问题综合到一个问题。因此,二分归并排序也涉及到三个问题:Step1: 把大问题划分成规模较小的子问题。Step2: 把子问题独立求解的过程。Step3: 把所有子问题综合解的过程。以数组序列[8,11,7,2,16,5,...

2020-03-18 13:01:04 248

原创 检索方法

问题在一个排好序的数组T[1…n]中查找x,如果x在T中,输出x在T的下标j;如果x不在T中,输出j=0.解析已知在一个排好序的数组T[1…n],欲在其中中查找x的下标。采用顺序查找和二分查找。顺序查找:从第一个元素m开始逐个与需要查找的元素x进行比较,当比较到元素值相同(即m=x)时返回元素m的下标,如果比较到最后都没有找到,则返回0。int SequentialSearch(int ...

2020-03-10 18:58:42 216

原创 最短路径问题

最短路径问题问题如果从图中某一顶点(源点)到达另一顶点(终点)的路径可能不止一条,如何找到一条路径使得沿此路径上各边的权值总和(称为路径长度)达到最小。实例用Floyd算法求解下图各个顶点的最短距离。写出Floyd算法的伪代码和给出距离矩阵(顶点之间的最短距离矩阵),按实验报告模板编写算法。Floyd(弗洛伊德)算法算法思想:从任意节点i到任意节点j的最短路径不外乎2种可能:1)直...

2020-03-04 19:20:00 441

原创 安装Ubuntu教程之 安装windows子系统 win10系统

安装Ubuntu教程之 安装windows子系统 win10系统1.进入windows商城(Microsoft store),搜索Ubuntu,点击获取,点击安装2.控制面板 ->程序和功能 ->启用或关闭Windows功能3.选择适用于linux的Windows子系统确定,会要求电脑重新启动4.重启后,打开 Ubuntu,等待几分钟5.输入账用户名,密码,确认密码...

2020-02-28 15:15:13 422

原创 最小生成树实验

问题在一给定的无向图G = (V, E) 中,(u, v) 代表连接顶点 u 与顶点 v 的边(即),而 w(u, v) 代表此边的权重,若存在 T 为 E 的子集(即)且为无循环图,使得的 w(T) 最小,则此 T 为 G 的最小生成树。请实现最小生成树算法。解析Prim算法:Prim算法又称“加点法”,用于边数较多的带权无向连通图方法:每次找与之连线权值最小的顶点,将该点加入最小生...

2020-02-26 19:11:03 681

空空如也

空空如也

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

TA关注的人

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