当前位置: 首页 > news >正文

代码随想录训练营 贪心02

代码随想录训练营 贪心01

  • 🌸55. 跳跃游戏🌸
        • 代码
      • 122. 买卖股票的最佳时机 II
        • 45. 跳跃游戏 II

🌸55. 跳跃游戏🌸

给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。
判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。

代码

// 贪心
func canJump(nums []int) bool {cover := 0n := len(nums)-1for i := 0; i <= cover; i++ { // 每次与覆盖值比较cover = max(i+nums[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 = isteps++break}}}return steps
}
http://www.lryc.cn/news/141337.html

相关文章:

  • Linux安装NVM(简洁版)
  • vue 弹出框 引入另一个vue页面
  • 为Android做一个ShowModal窗口
  • 神经网络的工作原理
  • Pandas数据分析教程-数据清洗-字符串处理
  • Nginx 核心配置
  • yum命令安装程序
  • 什么是CSS中的BFC?
  • 探讨uniapp的页面问题
  • 【跨域异常】
  • 上市公司环境信息披露(含环境负债、管理、监管、业绩与治理披露,2008-2022)
  • 网络基础入门
  • Oracle工具之SQLLDR
  • 探索pytest:Python自动化测试的新境界
  • K8s学习笔记4
  • Kafka 学习笔记
  • vue实现表格的动态高度
  • HodlSoftware-免费在线PDF工具箱 加解密PDF 集成隐私保护功能
  • 09 数据库开发-MySQL
  • QT通过ODBC连接GBase 8s数据库(Windows)示例
  • Java-三个算法冒泡-选择排序,二分查找
  • docker版jxTMS使用指南:使用jxTMS提供数据
  • 阿里 MySQL 规范
  • C++ Primer阅读笔记--动态内存和智能指针
  • git分支管理策略
  • IntelliJ IDEA maven配置,设置pom.xml的配置文件
  • C#__使用Thread启动线程和传输数据
  • appium2.0+ 单点触控和多点触控新的解决方案
  • 记录一次Modbus通信的置位错误
  • 数据结构--递归与分治