专题一 贪心算法总结

原创 2016年05月31日 13:21:15

贪心算法总结

一、解释:

在求问题最优解的时候,从问题的初始状态出发,去求每一步的最优解,通过若干次的贪心选择最终得到整个问题最优解的方法

二、理论基础:

1.每一步都采用当前状态下最好的选择,

2.通过局部最优得到全局最优。

3.并不能保证总是能够得到所有问题的最理想结果

4.利用贪心算法需要知道:

(1).该题是否适合贪心算法.

(2)如何选择贪心标准。

5.贪心算法的每一次操作都会对结果产生直接的影响

6.问题的最优子结构性质是该问题求解的关键

三、贪心算法的求解过程

1.候选集合

2.解集合

3.解决函数

4.选择函数又称贪心策略

5.可行函数

四、经典问题

1.活动安排问题

struct action{

int s;

int f;

int index

};

然后排序

用数组记录被选中的活动

2.背包问题(物品可以分割)

struct bag{

int w;

int v;

double c;

};

按性价比排序

选性价比高的装入

3.最优装载问题

struct  load{

int index;

int w;

};

按集装箱的重量排序

将重量最轻者先装

4.删数问题

按最近下降点优先的贪心策略


版权声明:本文为博主原创文章,未经博主允许不得转载。

ACM第一专题—贪心算法总结

这一专题的题目做了不少,但似乎对贪心的感念依然有些模糊,下面简单写下我的理解。   一.概述   所谓贪心算法,就是用将一个大的问题细化成若干小问题,通过逐一解决这些小问题,最终求得问题解的方法。这种...

贪心算法专题总结

这一段时间学的是贪心算法,从字面上看,就是选取贪的标准,就是按照一定的标准进行选择,寻找局部最优解,换句话说,就是在求最优解问题的过程中,依据某种贪心标准,从问题的初始状态出发,直接去求每一步的最优解...
  • gao_wyq
  • gao_wyq
  • 2016年03月30日 21:44
  • 411

贪心算法专题(1)--HDU1009

题目大意:fatmouse需要用自己手中的猫粮去跟猫交易javabean-就是咖啡豆,共有n个房间,每个房间与一只猫,第 i 个房间里面,fatmouse可以支付 F[i] 磅的猫粮去交换得到 J[...
  • Kerwun
  • Kerwun
  • 2017年02月20日 21:37
  • 131

贪心转载专题之:贪心算法介绍

原文链接:http://blog.csdn.net/zhouq1986/article/details/2037126 注意,本人不赞同原文中背包问题的反例。但做未修改。本文中后面三个贪心算法例子相当...

贪心算法总结及实例简介

基本思想: 1. 求解最优化问题的算法包含一系列步骤。 2. 每一步都有一组选择。 3. 作出当前看来最好的选择。 4. 希望通过作出局部优化选择达到全局优化选择。 5. 贪心算法不一定总产...

贪心算法——知识点总结

贪心算法 一、基本概念: 所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。 贪心算法没有固定的算法框架,算...

贪心算法总结——读书笔记

1、基本概念 贪心算法是一种求解组合优化问题的算法设计技术,其求解过程由一系列决策构成,每一步决策仅依赖于某种局部优化的性质。 与动态规划算法不同,贪心算法在做决策时候不必考虑所有子问题的选择结果。...

贪心算法总结

设有N个活动时间集合,每个活动都要使用同一个资源,比如说会议场,而且同一时间内只能有一个活动使用,每个活动都有一个使用活动的开始si和结束时间fi,即他的使用区间为(si,fi),现在要求你分配活动占...

贪心算法总结

第一套题主要用贪心算法来解决问题,贪心算法简单来说就是从局部最优解,进而求得整体最优解,其中难点就是选择贪心标准,贪心标准的选择选的巧妙问题就会变的很简单,比如第一题搬桌子的题,就是把房间转化为对应的...

练习1——贪心算法总结

贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解。     实现贪心的具体步骤是: Begin 从...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:专题一 贪心算法总结
举报原因:
原因补充:

(最多只允许输入30个字)