-
122.买卖股票的最佳时机II
-
class Solution { public: int maxProfit(vector<int>& prices) { int sum = 0; for (int i = 1; i < prices.size(); i++) { if (prices[i] - prices[i - 1] > 0) sum = sum + prices[i] - prices[i - 1]; } return sum; } };
-
55. 跳跃游戏
-
class Solution { public: bool canJump(vector<int>& nums) { int ma = 0; if(nums.size()==1) return 1; for (int i = 0; i < nums.size(); i++) { if (i <= ma) { ma = max(ma, i + nums[i]); } } return ma >= nums.size()-1; } };
-
45.跳跃游戏II
-
class Solution { public: int jump(vector<int>& nums) { if (nums.size() == 1) return 0; int cur = 0; int pre = 0; int count = 0; for (int i = 0; i < nums.size(); i++) { cur = max(i + nums[i], cur); if (i == pre) { count++; pre = cur; if (pre >= nums.size() - 1) break; } } return count; } } ;
本文介绍了两个编程问题的解决方案:买卖股票时寻找最大利润的maxProfit函数,以及判断在给定整数数组中能否通过跳跃到达末尾的canJump和jump函数。展示了如何用动态规划方法解决这些问题。

444

被折叠的 条评论
为什么被折叠?



