Day28 贪心算法 part02

122.买卖股票的最佳时机II

本题解法很巧妙,本题大家可以先自己思考一下然后再看题解,会有惊喜!

class Solution {public int maxProfit(int[] prices) {//分析每一天的情况。只要保证今天买,明天卖可以不亏钱,那就是最大的利润。把每一天可以赚钱的机会都不放过,先把能挣到的钱放进口袋里。int sum = 0;for(int i = 0; i < prices.length - 1; i++){if(prices[i+1] > prices[i]){sum += (prices[i+1]-prices[i]);}}return sum;       }
}

总结

1.本题是贪心算法最直观的体现。我们怎么保证总的利润最大呢?分析每一天的情况。只要保证今天买,明天卖可以不亏钱,然后把每一天可以赚钱的机会都不放过,先把能挣到的钱放进口袋里,那就是最大的利润。

2.重点是分析每一天的情况,只要今天买,明天卖可以挣到钱就行。不要想着今天买,隔几天再卖,这种方法和 今天买,明天卖 最后累加的收益是一样的。

3.本题中理解利润拆分是关键点! 不要整块的去看,而是把整体利润拆为每天的利润。一旦想到这里了,很自然就会想到贪心了,即:只收集每天的正利润,最后稳稳的就是最大利润了。利润分解为每天为单位的维度,而不是从 0 天到第 3 天整体去考虑!<

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/888118.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity3D模型场景等测量长度和角度功能demo开发

最近项目用到多段连续测量物体长度和角度功能&#xff0c;自己研究了下。 1.其中向量角度计算&#xff1a; 需要传入三个坐标来进行计算。三个坐标确定两条向量线段的方向&#xff0c;从而来计算夹角。 public Vector3 SetAngle(Vector3 p1, Vector3 p2,Vector3 p3) { …

【MATLAB】基于RSSI的蓝牙定位与例程,设置4个基站、二维定位

目录 ​编辑 商品描述 主要功能 技术细节 适用场景 下载链接 商品描述 这款基于接收信号强度指示&#xff08;RSSI&#xff09;原理的蓝牙定位程序&#xff0c;专为需要高效、可靠定位解决方案的开发者和研究人员设计。它能够在二维平面内&#xff0c;通过4个锚点实现对未…

npm 最新国内淘宝镜像地址源 (旧版已不能用)

注意&#xff1a;原域名https://registry.npm.taobao.org/ 在 2022.06.30 号正式下线和停止 DNS 解析 最新地址&#xff1a; #最新地址 淘宝 NPM 镜像站喊你切换新域名啦! npm config set registry https://registry.npmmirror.com 查看镜像使用状态 npm config get registr…

【学习笔记】基于RTOS的设计中的堆栈溢出(Stack Overflow)-第1部分

本文由RTOS专家Jean J. Labrosse撰写。 基于RTOS的应用程序中的每个任务都需要自己的堆栈,堆栈的大小取决于任务的要求(例如,函数调用嵌套、传递给函数的参数、局部变量等)。 为了避免堆栈溢出,开发人员需要过度分配堆栈空间,但不要太多,以避免浪费RAM。 什么是堆栈溢…

单链表---移除链表元素

对于无头单向不循环链表&#xff0c;给出头结点head与数值val&#xff0c;删除链表中数据值val的所有结点 #define ListNodeDataType val struct ListNode { struct ListNode* psll;ListNodeDataType val; } 方法一---遍历删除 移除所有数值为val的链表结点&#xff0c;…

ROC曲线

文章目录 前言一、ROC的应用&#xff1f;二、使用方式1. 数据准备2.绘图可视化 前言 在差异分析中&#xff0c;ROC曲线可以用来评估不同组之间的分类性能差异。差异分析旨在比较不同组之间的特征差异&#xff0c;例如在基因表达研究中比较不同基因在不同条件或组织中的表达水平…

基数排序(代码+注释)

#include <stdio.h> #include <stdlib.h>// 获取数组中的最大值 int GetMax(int* a, int n) {int max a[0];for (int i 1; i < n; i) {if (a[i] > max) {max a[i];}}return max; }// 对数组按照某个位数进行计数排序 void CountingSortForRadix(int* a, i…

10)语法分析:介词辨析

1. For 主要用法&#xff1a; 目的或原因&#xff1a;表示做某事的目的或原因。 Example: I am studying for the exam. (我在为考试学习。)Example: She bought a gift for her friend. (她为她的朋友买了一份礼物。) 持续时间&#xff1a;表示某个动作或状态的持续时间。 Ex…

第一届“吾杯”网络安全技能大赛 Writeup

战队信息 战队名称&#xff1a;在你眼中我是誰&#xff0c;你想我代替誰&#xff1f; 战队排名&#xff1a;13 Misc Sign Hex 转 Str&#xff0c;即可得到flag。 原神启动&#xff01; 不好评价&#xff0c;stegsolve 秒了&#xff1a; WuCup{7c16e21c-31c2-439e-a814-b…

AJAX一、axios使用,url组成(协议,域名,资源路径)查询参数和化简,错误处理,请求/响应报文,状态码,接口文档,

一、AJAX是什么 概念 &#xff1a; AJAX是一种与服务器&#xff08;后端&#xff09;通信的技术 二、请求库axios的基本用法 1导包 2使用 // 1. 发请求 axios({ url: 请求地址 }).then(res > { // 2.接收并使用数据 }) <body><p class"province"…

深入学习MapReduce:原理解析与基础实战

标题&#xff1a;深入学习MapReduce&#xff1a;原理解析与基础实战 MapReduce是一种分布式计算框架&#xff0c;用于大规模数据的处理和分析。作为Hadoop生态系统的核心组件&#xff0c;MapReduce凭借其简单的编程模型和强大的并行计算能力&#xff0c;广泛应用于大数据领域。…

鸿蒙HarmonyOS学习笔记(6)

定义扩展组件样式&#xff1a;Extend装饰器 在前文的示例中&#xff0c;可以使用Styles用于样式的重用&#xff0c;在Styles的基础上&#xff0c;我们提供了Extend&#xff0c;用于扩展原生组件样式。 说明 从API version 9开始&#xff0c;该装饰器支持在ArkTS卡片中使用。 从…

Chrome DevTools Protocol 进阶:Runtime 域

前言 在 Chrome DevTools Protocol&#xff08;CDP&#xff09;中&#xff0c;Runtime 域是一个非常重要的部分&#xff0c;它主要用于与 JavaScript 的执行环境进行交互。通过 Runtime 域&#xff0c;开发者可以在页面上下文中执行 JavaScript 代码、评估表达式、捕获异常等操…

Android 亮度调节

frameworks/base/packages/SystemUI/src/com/android/systemui/settings/BrightnessController.java 更新屏幕亮度值Settings.System.SCREEN_BRIGHTNESS BrightnessController.java中有个onChanged事件&#xff0c;这个是更新 setBrightness(val) private void setBrightness(i…

当你访问一个网站时,数据是怎么传输的呢

摘要&#xff1a; 本文详细阐述了电脑访问网站时数据从电脑端逐步传输到服务器端的完整过程&#xff0c;深入剖析了每一步骤中数据的形态变化以及所涉及的网络协议&#xff0c;包括应用层的 HTTP 与 DNS、传输层的 TCP、网络层的 IP 以及数据链路层的以太网等协议的协同工作机制…

基于 Python、OpenCV 和 PyQt5 的人脸识别上课打卡系统

大家好&#xff0c;我是Java徐师兄&#xff0c;今天为大家带来的是基于 Python、OpenCV 和 PyQt5 的人脸识别上课签到系统。该系统采用 Python 语言开发&#xff0c;开发过程中采用了OpenCV框架&#xff0c;Sqlite db 作为数据库&#xff0c;系统功能完善 &#xff0c;实用性强…

智能化业务校验框架:动态设计与应用实践

目录 一、业务背景 二、配置内容展示 三、商品动态配置内容展示 &#xff08;一&#xff09;商品spu校验信息数据 &#xff08;二&#xff09;商品sku校验信息数据 &#xff08;三&#xff09;组包商品校验信息数据 &#xff08;四&#xff09;商品数据校验数据持有者 &…

鸿蒙面试 --- 性能优化(精简版)

一、性能优化的三个方面 感知流畅&#xff1a;通过合理运用动画提升用户对应用操作的感知流畅度&#xff0c;同时避免因动画滥用导致性能下降。涵盖视觉感知优化、转场场景动效感知流畅&#xff08;如出现 / 消失转场、导航转场、模态转场、共享元素转场等&#xff09;&#x…

idea2024加载flowable6.8.1.36遇到的问题-idea启动flowable问题flowable源码启动问题

代码下载地址&#xff1a; https://gitee.com/hanpenghu_admin_admin/flowable6.8.1.git 1.首先是通过顶层目录maven clean install 发现很多子模块并不会install本地mavenStore库&#xff0c;这导致了&#xff0c;一堆相互依赖的模块报错找不到&#xff0c;所以需要根据报错…

web安全从0到1:burp-suite3

声明&#xff01; 学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下&#xff0c;如涉及侵权马上删除文章&#xff0c;笔记只是方便各位师傅的学习和探讨&#xff0c;文章所提到的网站以及内容&#xff0c;只做学习交流&#xff0c;其他均与本人以及泷羽sec团队无关&a…