郑州网站快速制作,网站开发一定要用框架嘛,个人网站建设的意义,免费3d模型素材网站代码随想录训练营 贪心01 #x1f338;55. 跳跃游戏#x1f338;代码 122. 买卖股票的最佳时机 II45. 跳跃游戏 II #x1f338;55. 跳跃游戏#x1f338; 给你一个非负整数数组 nums #xff0c;你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的… 代码随想录训练营 贪心01 55. 跳跃游戏代码 122. 买卖股票的最佳时机 II45. 跳跃游戏 II 55. 跳跃游戏 给你一个非负整数数组 nums 你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标如果可以返回 true 否则返回 false 。 代码
// 贪心
func canJump(nums []int) bool {cover : 0n : len(nums)-1for i : 0; i cover; i { // 每次与覆盖值比较cover max(inums[i], cover) //每走一步都将 cover 更新为最大值if cover n {return true}}return false
}
func max(a, b int ) int {if a b {return a}return b
}
122. 买卖股票的最佳时机 II 给你一个整数数组 prices 其中 prices[i] 表示某支股票第 i 天的价格。 在每一天你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买然后在 同一天 出售。 返回 你能获得的 最大 利润 。 func maxProfit(prices []int) int {n : len(prices)dp : make([][2]int, n)dp[0][1] -prices[0]for i : 1; i n; i {dp[i][0] max(dp[i-1][0], dp[i-1][1]prices[i])dp[i][1] max(dp[i-1][1], dp[i-1][0]-prices[i])}return dp[n-1][0]
}func max(a, b int) int {if a b {return a}return b
}45. 跳跃游戏 II 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说如果你在 nums[i] 处你可以跳转到任意 nums[i j] 处: 0 j nums[i] i j n 返回到达 nums[n - 1] 的最小跳跃次数。生成的测试用例可以到达 nums[n - 1]。 func jump(nums []int) int {position : len(nums) - 1steps : 0for position 0 {for i : 0; i position; i {if i nums[i] position {position istepsbreak}}}return steps
}