动态规划 三要素: 状态 状态转移方程 空间换时间:保存每一步的递推结果 1. leetcode 300.最长递增子串 (LIS) 给定一个数列,长度为N, 求这个数列的最长上升(递增)子数列(LIS)的长度. 以1 7…
分类:贪心算法
贪心算法——另一种找最大值情况
寻找最大数(三) 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 给出一个整数N,每次可以移动2个相邻数位上的数字,最多移动K次,得到一个新的整数。 求这个新的整数的最大值是多少。 输入 多组测…
贪心算法 田忌赛马(problem C)
题意:这是田忌赛马的故事,首先可以将田忌和国王的马的速度从快到慢排列,然后进行比较。每比一次两边各减去一匹马,用四个标记分别标记田忌和国王的最快、最慢马。先比较他们最快的马,若相等,再比较最慢的马,考虑一下条件和其他因素…
hdoj1052 Tian Ji -- The Horse Racing(贪心算法+2)
田忌赛马,关键在于比较的次序。 首先先比较两个人最慢的马,如果田忌的马快就直接赢下一分,count++ 如果更慢的话就用这匹慢马去与大王最快的马比赛,count– 如果相等的话,再比较两个人最快的马,如果田忌…
贪心算法-背包算法-java实现
/** * 贪心算法-背包算法: */ public class Backpack { // 现有一个背包容量150kg // 有一个宝藏里面有很多物品,物品的重量和价值分别为: // 25kg--20 // 30kg-…
贪心算法 --- 马踏棋盘(C)
五大常用算法之一,好高大上的东西,决定了把这五大算法给搞了,第一个贪心算法,百度一下它的概念,贴过了来了: 贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,…
汽车加油问题(贪心算法)
1.问题描述:一辆汽车加满油后可行驶nkm。旅途中有若干加油站。设计一个有效算法,指出应在哪些加油站停靠加油,使沿途加油次数最少。 算法设计:对于给定的n和k个加油站位置,计算最少加油次数。 数据输入:n:表示汽车加满油…
加油站问题(贪心法)
一辆汽车加满油后可行驶n公里。旅途中有若干个加油站。设计一个有效算法,指出应在哪些加油站停靠加油,使沿途加油次数最少。对于给定的n(n <= 5000)和k(k <= 1000)个加油站位置,编程计算最少加油…
面试题14-(剪绳子)动态规划&贪心算法
题目要求 题目要求: 给你一根长度为n的绳子,请把绳子剪成m段(m , n )都是正整数,(n>1&m>1) 每段绳子的长度为k[0],k[1],k[2],…,k[m]。请问k[0]k[1…
动态规划算法和贪心算法的比较
利用动态规划求解最优问题的步骤: (1)证明该问题具有最优子结构性质; (2)根据最优子结构性质,写出最优值的递归表达式; (3)根据递归式,说明该问题具有重叠子结构性质; (4)采用自底向上的方式计算,写出求解最优值的…
贪心算法应用——最小生成树
本文提要 0.摘要 1.Prim算法 1.1算法描述 1.2算法实现 2.Dijkstral算法 2.1算法描述 2.2算法实现 3.Boruvka(Sollin)算法 3.1算法描述 3.2算法实现 4.对比&…
贪心算法;部分背包问题;快速排序O(nlgn);贪心算法O(n);
#include <iostream> using namespace std; //贪心算法解决部分背包问题 class GreedyKnapsack { private: int *weight;//物品…