● 122.买卖股票的最佳时机II Best Time to Buy and Sell Stock II - LeetCode
res = 0;
for (int i = 1; i < price.length; i++)
res += Math.max( price[i] - price[i - 1], 0);
return res;
class Solution {
public int maxProfit(int[] prices) {
int res = 0;
for (int i = 1; i < prices.length; i++) {
res += Math.max(prices[i] - prices[i - 1], 0);
}
return res;
}
}
Time: O(n) Space O(1)
● 55. 跳跃游戏 Jump Game - LeetCode
int cover = 0;//维护最大覆盖范围
if (nums.lenghh == 1) return true;
for (int i = 0; i <= cover; i++)
cover = Math.max( i + nums[i], cover);
if (cover > nums.length - 1) return true;
return false;
class Solution {
public boolean canJump(int[] nums) {
int cover = 0;
for (int i = 0; i <= cover; i++) {
cover = Math.max(i + nums[i], cover);
if (cover >= nums.length - 1) return true;
}
return false;
}
}
● 45.跳跃游戏II Jump Game II - LeetCode
要再看看,应该是没弄懂
class Solution {
public int jump(int[] nums) {
if (nums.length == 1) return 0;
int cur = 0;
int next = 0;
int res = 0;
for (int i = 0; i < nums.length; i++) {
next = Math.max(i + nums[i], next);
if (i == cur) {
res++;
cur = next;
}
if (cur >= nums.length - 1) break;
}
return res;
}
}