贪心算法简析

贪心算法

是什么

与动态规划类似的是都是解决最优化问题,但是动态规划是从一端开始,求出所有的最优解。而贪心算法则是一开始就做出一次认为的最优选择,很贪心的希望一次就解决问题,该选择不一定正确,但很多时候可以解决问题

贪心算法能够解决问题的原理

考虑任意非空子问题空间Sk,令am是Sk中结束时间最早的活动,则am在Sk的某个最大兼容活动子集中。

怎么用

#include <iostream>
#include <vector>
using namespace std;

/** \brief		贪心算法,添加一个活动起止时间都是0,便于运算
 * \param s vector<int>&    每个活动的起始时间
 * \param f vector<int>&    每个活动的结束时间,升序排列,相同时,按照起始时间排序
 * \param k int     第一个活动下标
 * \param n int     最后一个活动下标
 * \param ans vector<int>&  保存结果
 * \return void
 */
void Greedy(vector<int> &s, vector<int> &f, int k, int n,vector<int> &ans)
{
   
    int m = k + 1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值