动态规划
葛俊在新泽西
本人微博:葛俊在新泽西
展开
-
Crack LeetCode 之 70. Climbing Stairs
https://leetcode.com/problems/climbing-stairs/description/假设对于n阶楼梯,一共有f种走法。然后分两种情况:1.先迈出一步,对于剩下的n-1阶楼梯一共有f1种走法;2.先迈出两步,对于剩下的n-2阶楼梯一共有f2种走法。那么f=f1+f2。显然这是斐波那契数列的公式,所以这道题实际上是求斐波那契数列。以下是实现代码,时间复杂度...原创 2018-09-16 15:09:40 · 129 阅读 · 0 评论 -
Crack LeetCode 之 91. Decode Ways
https://leetcode.com/problems/decode-ways/description/本题可以用动态规划解。对于一个字符串s,假设其长度为length,并且有一个长度为(length+1)的int数组statusVec。对于statusVec的任意一个元素statusVec[i],它的含义是前i个数字组成的字符串有多少种解法。当新加进来一个数字的时候,根据该字符与前一...原创 2018-09-22 17:08:44 · 124 阅读 · 0 评论 -
Crack LeetCode 之 96. Unique Binary Search Trees
https://leetcode.com/problems/unique-binary-search-trees/description/因为对于任何一个形态只有一种数字排列方式,所以这道题的本质是求可能的二叉查找树的形态总数。具体解法是任选一个节点做根节点,将左右两边可能的二叉树形态的数目相乘得到一个结果数。按照以上方法遍历所有的节点并累加即可。可以采用动态规划的方法,用一个res数组保...原创 2018-10-01 14:06:44 · 128 阅读 · 0 评论 -
卡特兰数算法题整理
最近我做了很多卡特兰数相关的算法题,阅读了一些网络上的文章。有的文章过于冗长,太纠结于公式的推导;有的文章又太简单,只是罗列了相关的题目却并无解题分析;而且这些文章或多或少都有一些错误。所以本文目的是简明的分析卡特兰数题目的思路和解法,并且整理的网友的注解。以下是两篇本文主要引用的文章的链接:https://blog.csdn.net/Hackbuteer1/article/details...原创 2018-10-02 18:00:39 · 1819 阅读 · 0 评论 -
Crack LeetCode 之 53. Maximum Subarray
https://leetcode.com/problems/maximum-subarray/description/下文除了代码以外,部分引用和整理自下文。https://blog.csdn.net/linhuanmars/article/details/21314059这是一道非常经典的动态规划题,本题的思路在别的动态规划题中也很常用,以后我们称之为“局部最优和全局最优解法”。基本...原创 2018-10-10 17:47:36 · 109 阅读 · 0 评论 -
Crack LeetCode 之 152. Maximum Product Subarray
https://leetcode.com/problems/maximum-product-subarray/description/下文除了代码部分外,整理自https://blog.csdn.net/linhuanmars/article/details/39537283这道题跟https://blog.csdn.net/tassardge/article/details/830008...原创 2018-10-11 15:49:56 · 78 阅读 · 0 评论 -
Crack LeetCode 之 121. Best Time to Buy and Sell Stock
https://leetcode.com/problems/best-time-to-buy-and-sell-stock/description/这道题跟https://blog.csdn.net/tassardge/article/details/83000873类似,还是用一维动态规划中的“局部最优和全局最优法”。我们迭代处理每天的价格,并且维护三个变量min_price、local和...原创 2018-10-11 16:09:33 · 95 阅读 · 0 评论 -
Crack LeetCode 之 123. Best Time to Buy and Sell Stock III
原题链接:https://leetcode.com/problems/best-time-to-buy-and-sell-stock-iii/本文的算法来自这个链接,但是在此基础上做了部分修改:https://blog.csdn.net/linhuanmars/article/details/23236995本文使用的是二维动态规划,是我们之前讨论的“全局最佳+局部最佳”的扩展。首先,我...原创 2018-10-20 16:17:42 · 86 阅读 · 0 评论