自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 回溯法——旅行商(TSP)问题

问题描述给定一个n顶点网络(有向或无向),找出一个包含n个顶点且具有最小耗费的换路。任何一个包含网络所有顶点的换路称为一个旅行。旅行商问题(Traveling Salesman Problem,TSP)是要寻找一条耗费最少的旅行。 图1 四顶点网络如图1是一个四顶点无向网络。这个网络的一些旅行:1,2,4,3,1;1,3,2,4,

2017-06-28 18:16:49 9165 1

原创 分支定界法——0-1背包问题

问题描述:给定n种物品和一背包。物品i的重量是wi,其价值为vi,背包的容量为C。问:应如何选择装入背包的物品,使得装入背包中物品的总价值最大?算法设计分析:和回溯法中的界定函数类似,对每一个活动节点N,计算收益的上限maxPossibleProfitInSubtree,使得以N为根的子树中,任何一个节点的收益都不可能超过这个值。活动节点使用大根堆maxHeap<heapNode>,按需构造解空间树

2017-06-27 16:01:23 9515 1

原创 回溯法——0-1背包问题

问题描述给定n种物品和一背包。物品i的重量是wi,其价值为vi,背包的容量为C。问:应如何选择装入背包的物品,使得装入背包中物品的总价值最大?算法设计分析从所有的物品中选取若干将它们装进背包,在满足限制条件的情况下,获得最大的收益。既然要选择一个对象的子集,解空间就应该组织成子集树结构。要设计的递归算法使用深度优先搜索子集树:​ 对于左孩子,满足限制条件即可;对于右孩子,需要利用界定函数计算此节

2017-06-27 15:55:25 6077

原创 回溯法和分支定界法

概述​ 要求解一个问题,最可靠的方法是:列出所有候选解,然后逐个检查,理论上在遍历了所有的候选解之后,就能得到所需要的解。但是,对于实际运用中的问题,候选解的规模庞大,即使使用速度最快的计算机,也很难在合理的时间内解决。​ 回溯法和分支定界法师对复杂问题进行系统检查的系统方法。通过使用限制条件和界定函数,可以省去对很大一部分候选解的检查。回溯法——深度优先搜索​ 回溯法是一种选

2017-06-26 16:22:33 6409

原创 分治算法

算法思想分治算法把一个问题实例分解成若干个小型而独立的实例,从而可以在并行计算机上执行;那些小型而独立的实例可以在并行计算机的不同处理器上完成。分治法的思想:将原问题分解为几个规模较小但类似于原问题的子问题,递归地求解这些子问题,然后再合并这些子问题的解来建立原问题的解。分治算法的特征分治法所能解决的问题一般具有以下几个特征:1) 该问题的规模缩小到一定的程度就可以容易地解决;2) 该问题可以分解为

2017-06-21 16:31:39 650 1

原创 贪心算法——拓扑排序

关于贪心算法介绍: http://blog.csdn.net/mind_v/article/details/72956707拓扑排序问题描述一个复杂的工程,经常可以分解成一组简单一些的任务,这些任务完成了,整个工程就完成了。例如汽车组装问题可以分解成:底盘安装、车轴安装、车轮安装、座位安装、喷漆、刹车安装、车门安装等。但是这些任务之间有个先后顺序,例如车轴安装之前先要进行底盘安装。类似的问题,可

2017-06-09 21:31:34 2133

原创 贪心算法——单源最短路径(Dijkstra算法)

单源最短路径——Dijkstra算法问题描述对于给定的加权有向图G(加权邻接数组表示),它的每一条边(i,j)都有一个固定成本(权值)a[i][j],一条路径的长度就是该路径上所有边的的成本之和。如下图所示,路径124的长度是8,路径125的长度是9。 寻找一条从给定的一个源顶点出发到任意顶点的(目的顶点)的最短路径。如1到5的最短路径为1345。贪心法求解根据贪婪法,每一步生成一条当前顶点的最短

2017-06-09 21:22:36 3171

原创 贪心算法

最优化问题定义:给定一组限制条件(constraint)和一个优化函数(optimization function),求出一个可行解(feasible solution),使得优化函数可能取得最优值,即最优解(optimal solution),求解这样一个最优解的问题就称为最优化问题(optimization problem)。解决一个最优化问题有很多种方法:贪心算法、分治算法、动态规划、线性规划

2017-06-09 13:38:35 1481

空空如也

空空如也

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

TA关注的人

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