码迷,mamicode.com
首页 >  
搜索关键字:最优解    ( 1254个结果
【算法】贪心法
描述:在分阶段执行操作的情况下,在每一阶段都选择当前最后的解,而不顾将来如何。顾名思义:贪心法/贪婪法是“只顾当下,不计未来”;另外,贪心法并不一定总是最优解,但是一个比较不错的可行解。 应用举例:Prim算法,Kruskal算法,Dijkstra算法 Prim算法简述:Prim算法使得求得得解连续 ...
分类:编程语言   时间:2019-12-23 13:08:23    阅读次数:105
原始对偶算法
原始对偶方法 原始对偶方法利用的就是上一节课中讲到的互补松弛定理。我们首先找到对偶问题的一个可行解 y,并尝试找到一个原问题的可行解 x,使得 x 和 y 满足互补松弛定理。如果我们找到了这样的 x,那么 x 和 y 就分别是原问题和对偶问题的最优解;否则我们就需要调整 y,让它变得更好,继续尝试, ...
分类:编程语言   时间:2019-12-20 16:36:50    阅读次数:84
blog 14 | 回溯法总结
第五章 回溯法总结 一、对回溯算法的理解 回溯法和贪心法相比,贪心法是从上到下只进行深度搜索,它的代价取决于子问题的数目,也就是树的高度,每次在当前问题的状态上作出的选择都是1,换言之,它不进行广度搜索,这也造成了它的一个缺点:它得出的解不一定是最优解,很有可能是近似最优解。回溯法是从上到下进行深度 ...
分类:其他好文   时间:2019-12-19 23:11:38    阅读次数:142
对回溯算法的理解
一、对回溯算法的理解 应用回溯算法的三个步骤: 1.首先得构造解空间树:子集树和排列树; 2.以深度优先的方式搜索解空间:递归或迭代; 3.设计剪枝函数避免无效搜索:使用约束函数,剪去不满足约束条件的路径或使用限界函数,剪去不能得到最优解的路径。 回溯法解问题的一个显著特征是,解空间树是虚拟的,在任 ...
分类:编程语言   时间:2019-12-19 21:00:06    阅读次数:80
【动态规划专题】3:换钱的最少货币数
《程序员代码面试指南--IT名企算法与数据结构题目最优解》 左程云 著 换钱的最少货币数 【题目】 给定数组arr, arr中所有的值都为正数且不重复。每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个整数aim,代表要找的钱数,求组成aim的最少货币数。 【举例】arr=[5,2, ...
分类:其他好文   时间:2019-12-18 13:14:35    阅读次数:135
【动态规划专题】2:矩阵的最小路径和
《程序员代码面试指南--IT名企算法与数据结构题目最优解》 左程云 著 矩阵的最小路径和 【题目】给定一个矩阵m,从左上角开始每次只能向右或者向下走,最后到达右下角位置,路径上所有的数字累加起来就是路径和,返回所有路径中最小的路径和。 【举例】如果给定的m如下:1 3 5 98 1 3 45 0 6 ...
分类:其他好文   时间:2019-12-17 15:01:45    阅读次数:89
【动态规划专题】1:斐波拉契数列问题的递归和动态规划
《程序员代码面试指南--IT名企算法与数据结构题目最优解》 左程云 著 斐波拉契数列问题的递归和动态规划 【题目】:给定整数N,返回斐波拉契数列的第N项。补充问题1:给定整数N,代表台阶数,一次可以跨2个或者1个台阶,返回有多少种走法。补充问题2:假设农场中成熟的母牛每年只会生产1头小母牛,并且永远 ...
分类:其他好文   时间:2019-12-17 13:19:55    阅读次数:121
动态规划之背包问题
背包问题是动态规划的一个分支,这里先简单介绍一下动态规划的思想。 动态规划程序设计是对解最优化问题的一种途径、一种方法,而不是一种特殊算法。不像搜索或数值计算那样,具有一个标准的数学表达式和明确清晰的解题方法。动态规划程序设计往往是针对一种最优化问题,由于各种问题的性质不同,确定最优解的条件也互不相 ...
分类:其他好文   时间:2019-12-15 14:22:12    阅读次数:97
剑指offer 连续子数组的最大和
第一次使用的方法是依次遍历每一个字串,然后记录最大值就可以了,但是这样的话,算法的时间复杂度为O(n2) 很显然这样做不是最优解 改进之后的算法时间复杂度为O(n),用一个sum来记录字串的和,如果当前字串和负数的话,那么就要将sum直接赋值为array[i] , 因为如果sum为负数的话,当前 a ...
分类:编程语言   时间:2019-12-14 21:31:13    阅读次数:108
博弈论小结
最近学了一点博弈论。 来写写blog造福人民(~~怕自己忘了~~)希望可以写出一篇比较好懂的文章,这里没有一些绕口的定义,也没有什么麻烦的代码,只有思维上的火花: 先来讨论讨论什么是博弈论: 博弈论就是指有若干个人进行一些对弈,并且窝们默认每个人都是最聪明的,不会失误,都可以找到当前的最优解,然后来 ...
分类:其他好文   时间:2019-12-12 12:46:52    阅读次数:95
1254条   上一页 1 ... 13 14 15 16 17 ... 126 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!