1.要点动态规划思想斐波拉奇数列变种2.题目一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n级的台阶总共有多少种跳法。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。3.示例示例 1:输入:n = 2输出:2示例 2:输入:... ...
分类:
其他好文 时间:
2020-06-26 14:37:13
阅读次数:
63
/* * 方法一 贪心法 O(n) * * 当叠加的和小于0时,就从下一个数重新开始, * 同时更新最大和的值(最大值可能为其中某个值), * 当叠加和大于0时,将下一个数值加入和中, * 同时更新最大和的值,依此继续。 * * 举例: nums = [-2,1,-3,4,-1,2,1,-5,4] ...
分类:
编程语言 时间:
2020-06-26 12:27:32
阅读次数:
54
题目描述 给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。 说明: 拆分时可以重复使用字典中的单词。 你可以假设字典中没有重复的单词。 示例: 输入: s = "leetcode", wordDict = ["lee ...
分类:
其他好文 时间:
2020-06-25 23:10:08
阅读次数:
48
题目 爱丽丝和鲍勃一起玩游戏,他们轮流行动。爱丽丝先手开局。 最初,黑板上有一个数字 N 。在每个玩家的回合,玩家需要执行以下操作: 选出任一 x,满足 0 < x < N 且 N % x == 0 。用 N - x 替换黑板上的数字 N 。如果玩家无法执行这些操作,就会输掉游戏。 只有在爱丽丝在游 ...
分类:
编程语言 时间:
2020-06-25 19:21:31
阅读次数:
102
动态规划好巧妙啊啊啊啊啊啊啊 啊 int max =Integer.MIN_VALUE; public int maxPathSum(TreeNode root) { //用动态规划来求解 //DFS //根节点的值、左子树的值、右子树的值、 dfs(root); return max; } pri ...
分类:
其他好文 时间:
2020-06-24 21:45:36
阅读次数:
59
正文 这一周都在搞这个dynamic programming,感觉确实是不光是看视频还是自己的琢磨,题看懂了听懂了,但是一下手就写着写着就停笔了。然后再看人家的答案,好的答案越看越明白,不好的答案越看越迷糊。总结一下,有时候答案可能翻一下才会恍然大悟! 以一道leetcode的题为列子说一下我的感受 ...
分类:
其他好文 时间:
2020-06-24 19:59:52
阅读次数:
52
图论算法内容难度较大,且灵活多变,本篇是对前述内容的小结 1. 图论算法设计难点 (1)如何将一个实际问题转化成图上的搜索问题(建模难) (2)如何选择最优的搜索方式,搜索代价的代价函数怎么设计(构造难) 2. 算法一览 (1)图论基本算法(DFS、BFS、最小生成树(prim(贪心)、kruska ...
分类:
编程语言 时间:
2020-06-24 16:36:08
阅读次数:
63
动态规划算法将待求解问题拆分成一系列相互交叠的子问题,通过递推关系定义各子问题的求解策略,并随时记录子问题的解,最终获得原始问题的解,避免了对交叠子问题的重复求解。 在动态规划算法中有三要素: 最优子结构: 是指每个阶段的最优状态可以从之前某个阶段的某个或某些状态直接得到 边界: 是指问题最小子集的 ...
分类:
编程语言 时间:
2020-06-22 22:44:25
阅读次数:
56
题目 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。 ...
分类:
编程语言 时间:
2020-06-22 02:05:29
阅读次数:
148