LeetCode #134:Gas Station(加油站) 题目描述 本题最直观的方法是暴力枚举每个加油站为起点的情况、每个点绕一圈,那么时间复杂度为 O(n2),会超时。此时我们需要用贪心的思想来优化它。 阅读全文
LeetCode #45:Jump Game II(跳跃游戏II) 题目描述 本题的思路与 #55 类似,也是需要选择最远的跳跃长度,区别是本题一定能跳到最后。我们设置变量 curCover,代表当前跳跃轮次可以跳到的范围 [0…curCover];设置变量 nextCover,代表下一轮次可以跳到的范围 [0…nextCover],在范围 [0…curCover] 中尝试找出 nextCover 的最大值。 阅读全文
LeetCode #55:Jump Game(跳跃游戏) 题目描述 本题采用贪心策略解解决。设置一个记录当前能跳跃到的最大下标变量 cover,从下标 0 开始 “跳跃” 时总是将 cover 更新为 max(cover, i + nums[i]),直到 cover 不再增加或 cover 能覆盖最后一个数。 阅读全文
LeetCode #376:Wiggle Subsequence(摆动序列) 题目描述 摆动序列的定义为:如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为摆动序列,规定少于等于两个元素的序列也是摆动序列。下面尝试使用贪心和动态规划两种思想来解题。 阅读全文