码迷,mamicode.com
首页 >  
搜索关键字:动态规划    ( 6061个结果
Leetcode#64 Minimum Path Sum
原题地址基本动态规划题代码: 1 int minPathSum(vector > &grid) { 2 if (grid.empty() || grid[0].empty()) return 0; 3 4 int m = grid.size(); 5 int n = grid[0].s...
分类:其他好文   时间:2015-01-27 20:12:28    阅读次数:165
Leetcode#62 Unique Paths
原题地址基本动态规划题代码: 1 int uniquePaths(int m, int n) { 2 vector sum(n, 0); 3 4 sum[n - 1] = 1; 5 for (int i = m - 1; i >= 0...
分类:其他好文   时间:2015-01-27 19:55:39    阅读次数:238
浅显易懂的动态规划入门
为了引出动态规划的基本思想,请看下面的例子: 题目描述: 斐波那契数列是数学中常见的数列,也叫兔子数列,它满足:a[1]=1,a[2]=1,a[n]=a[n-1]+a[n-2](n>2),输入n,输出a[n] mod 10000007的值。(n 输入样例: 3 4 5 输出样例: 2 3 5 【算法分析】 看到题目以后,我们可以很轻松的写出两个版本的代码,一个是递推...
分类:其他好文   时间:2015-01-27 16:26:17    阅读次数:402
Leetcode#53 Maximum Subarray
原题地址方法I:动态规划另sum[i]表示从i开始的最大子串和,则有递推公式:sum[i] = max{A[i], A[i] + sum[i+1]}因为递推式只用到了后一项,所以在编码实现的时候可以进行状态压缩,用一个变量即可代码: 1 int maxSubArray(int A[], int n)...
分类:其他好文   时间:2015-01-27 14:46:55    阅读次数:237
[LeetCode]Maximal Rectangle
Given a 2D binary matrix filled with 0's and 1's, find the largest rectangle containing all ones and return its area. 动态规划 用left[ ]数组纪录该点距离最左边(在矩形内部)的1的距离,用right[ ]数组纪录该点距离最右边(在矩形内部)的1距离,height[ ]...
分类:其他好文   时间:2015-01-27 09:32:51    阅读次数:131
hdu-acm stepsHumble Numbers
这是我做的第六道动态规划水题,对动态规划差不多有了一个大致的概念。动态规划有几个关键因素,第一是最优子结构,第二是状态和状态转移方程。整个过程都是以 最优 为中心的。因此在状态转移方程中常涉及到几个子状态的最优化的判断。这道题既采用了递堆的思想,又采用了一点动态规划的思想。状态转移方程为:f[i]=...
分类:其他好文   时间:2015-01-26 22:20:23    阅读次数:188
hdu1114
完全背包的水题,不过今天才学动态规划,就这样啦……hahahah!!!完全背包跟普通背包的区别是普通背包从后往前循环,以防止被替换完全背包是从前往后循环,后面的状态会跟着之前状态的改变而改变……#include #include #include #include #include #include...
分类:其他好文   时间:2015-01-26 11:41:09    阅读次数:138
01背包问题
动态规划的基本思想:将一个问题分解为子问题递归求解,且将中间结果保存以避免反复计算。通经常使用来求最优解,且最优解的局部也是最优的。求解过程产生多个决策序列,下一步总是依赖上一步的结果,自底向上的求解。动态规划算法可分解成从先到后的4个步骤:1. 描写叙述一个最优解的结构,寻找子问题,对问题进行划分...
分类:其他好文   时间:2015-01-25 16:31:04    阅读次数:140
2.14 求数组的子数组之和的最大值
题目:给定一个一维数组,求这个数组的子数组之和的最大值。 最佳方法:动态规划! 一、 可以将一个大问题(N个元素数组)转化为一个较小的问题(N-1个元素数组)。。 假设已经知道(A[1],...A[n-1])中最大的子数组的和为:All[1] 并且已经知道(A[1],...A[n-1])中包括A[1]的子数组的最大和为start[1] 所以最终的解All[0] ...
分类:编程语言   时间:2015-01-25 12:32:56    阅读次数:166
POJ 3783 Balls 动态规划
题意:给定B (B 方法就是动态规划了。  虽然刚开始一直以为是个贪心或者构造 dp[i][j] 表示有i层楼, 剩余j个球时, 最坏情况要确定K 所需的次数 那么在这些楼层里 我们可以选择在k层(1 有两种情况,破跟不破 (1)不破,  则排除掉了k层,剩余i-k层  则转化为 dp[i - k][j] (2)破了 则剩余i - 1层, 球剩k - 1个   转化为 dp...
分类:其他好文   时间:2015-01-24 21:25:43    阅读次数:291
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!