代码随想录训练营第二十七天| 贪心理论基础 455.分发饼干 376. 摆动序列 53. 最大子序和
贪心没有套路,说白了就是常识性推导加上举反例
今天的内容比较简单 简单了解贪心是通过局部最优解反推全局最优解(有经验成分)
455.分发饼干
题目链接:455. 分发饼干 - 力扣(LeetCode)
讲解链接:代码随想录
Java代码:
class Solution{//思路1 优先考虑饼干 小饼干先喂饱小胃口public int findContentChildren(int[] g, int[] s){Arrays.sort(s);Arrays.sort(g);int start = 0, count = 0;for(int i = 0; i < s.length && start < g.length; i++){if(s[i] >= g[start]){start++;count++;}}return count;}
}
376. 摆动序列
题目链接:376. 摆动序列 - 力扣(LeetCode)
讲解链接:代码随想录
感觉这道题我只明白了摆动 但是对于三个特殊情况我想不到 还是得慢慢来思考
- 情况一:上下坡中有平坡
- 情况二:数组首尾两端
- 情况三:单调坡中有平坡
Java代码:
class Solution{public int wiggleMaxLength(int[] nums){if(nums.length <= 1) return nums.length;//当前差值int curdiff = 0;//上一个差值int prediff = 0;int count = 1;for(int i = 1; i < nums.length; i++){//得到当前差值curdiff = nums[i] - nums[i - 1];//如果当前差值和上一个差值为一正一负//等于0 的情况 表示初始时的prediffif((curdiff > 0 && prediff <= 0) || (curdiff < 0 && prediff >= 0)){count++;prediff = curdiff;}}return count;}
}
53. 最大子序和
题目链接:53. 最大子数组和 - 力扣(LeetCode)
讲解链接:代码随想录
这题可以暴力直接过 有可能TLE 还是看看贪心 这道题也能用前缀和 或者 dp做
class Solution{public int maxSubArray(int[] nums){if(nums.length == 1) return nums[0];int sum = Integer.MIN_VALUE;int count = 0;for(int i = 0; i < nums.length; i++){count += nums[i];sum = Math.max(sum, count);//取出区间累计最大值if(count <= 0){count = 0;//相当于重置最大子序起始位置//因为遇到负数一定拉低总和}}return sum;}
}
努力学习 找工作
相关文章:
代码随想录训练营第二十七天| 贪心理论基础 455.分发饼干 376. 摆动序列 53. 最大子序和
贪心没有套路,说白了就是常识性推导加上举反例 今天的内容比较简单 简单了解贪心是通过局部最优解反推全局最优解(有经验成分) 455.分发饼干 题目链接:455. 分发饼干 - 力扣(LeetCode) 讲解链接ÿ…...
List直接使用removeAll报错
List直接使用removeAll报错 需要先将list转换才能使用 原因是: removeAll 方法在 Java 中用于从当前列表中删除另一个列表中存在的所有元素。如果直接对 List 接口的一个实现使用 removeAll 方法抛出异常,可能的原因有: 不同的List实现&am…...
Debian环境安装Docker Engine
Debian环境安装Docker Engine 卸载旧版本使用APT工具安装Docker设置存储库安装Docker设置权限 docker compose命令卸载Docker 卸载旧版本 要卸载的非官方软件包是: docker.iodocker-composedocker-docpodman-docker 此外,Docker Engine 依赖 containe…...
Python常用内置函数总结
目录 1. abs() 2. complex() 3. divmod() 4. eval() 5. float() 6. hash() 7. input() 8. int() 9. len() 10. list() 11. oct() 12. open() 13. pow() 14. print() 15. range() 16. reversed() 17. round() 18. sorted()…...
深入了解蓝牙Profile类型与设备的对应关系
在现代技术中,蓝牙作为一种无线通信技术,广泛应用于各种设备之间的短距离通信。不同的设备在连接时使用不同的蓝牙Profile(配置文件),每种Profile都为特定的设备功能提供支持,例如音频流传输、语音通话、文件传输等。在本文中,我们将详细介绍蓝牙Profile的常见类型及其对…...
[bug]java导出csv用Microsoft Office Excel打开乱码解决
[bug]java导出csv用Microsoft Office Excel打开乱码 现象 首先这个csv文件用macbook自带的 "Numbers表格" 软件打开是不乱码的, 但是使用者是Windows系统,他的电脑没有"Numbers表格"工具, 他用Microsoft Office Excel打开之后出现乱码,如下图…...
2023年区块链职业技能大赛——区块链应用技术(一)模块一
模块一:区块链产品方案设计及系统运维: 任务1-1:区块链产品需求分析与方案设计 1.依据给定区块链食品溯源系统的业务架构图,对考题进行业务分析,可能多的去考虑一个业务系统所需要的模块,使用Visio或思维导图工具展现本系统的基本设计概念和…...
4 软件工程——总体设计
一、设计过程 1.两个主要阶段 系统设计阶段:确定系统的具体实现方案结构设计阶段:确定软件结构 2.九个步骤 设想供选择的方案选取合理的方案推荐最佳方案功能分解设计软件结构设计数据库制定测试计划书写文档审查和复审 二、设计原理 1.模块化 模块…...
Elasticsearch:确保业务规则与语义搜索无缝协作
作者:来自 Elastic Kathleen DeRusso 利用查询规则与语义搜索和重新排序相结合的强大功能。 更多阅读: Elasticsearch 8.10 中引入查询规则 - query rules Elasticsearch 查询规则现已正式发布 - query rules 你是否知道查询规则(query ru…...
【大语言模型】ACL2024论文-33 Johnny 如何说服大型语言模型越狱:通过人性化 LLMs 重新思考挑战 AI 安全性的说服技巧
【大语言模型】ACL2024论文-33 Johnny 如何说服大型语言模型越狱:通过人性化 LLMs 重新思考挑战 AI 安全性的说服技巧 目录 文章目录 【大语言模型】ACL2024论文-33 Johnny 如何说服大型语言模型越狱:通过人性化 LLMs 重新思考挑战 AI 安全性的说服技巧目…...
【LuaFramework】LuaFramework_UGUI_V2框架学习
GitHub - jarjin/LuaFramework_UGUI_V2: 基于tolua的热更新框架V2 旧版本是Unity 5.0,这个是新版本支持更高版本的 导入工程后先清除wrap 然后重新生成wrap,你会发现有个报空null,框架的问题总结下所有的框架wrap相关报错问题和修复方法&…...
使用 AOP 在 Spring Boot 中实现跟踪和日志记录
在现代应用程序中,尤其是使用微服务构建的应用程序,跟踪和日志记录在跟踪流经各种服务的请求方面起着至关重要的作用。跟踪可帮助开发人员诊断问题、监控性能并了解用户在多个系统中的旅程。 在此博客中,我们将介绍如何使用traceId从前端生成…...
如何永久解决Apache Struts文件上传漏洞
Apache Struts又双叒叕爆文件上传漏洞了。 自Apache Struts框架发布以来,就存在多个版本的漏洞,其中一些漏洞涉及到文件上传功能。这些漏洞可能允许攻击者通过构造特定的请求来绕过安全限制,从而上传恶意文件。虽然每次官方都发布补丁进行修…...
FPGA远程升级 -- FLASH控制
简介 前文讲到如何实现XILINX芯片程序跳转,但升级程序是事先通过VIVADO工具将两个程序合成一个BIN文件实现升级的,并不能在线更新升级。要实现远程升级的能力需要对FPGA的FLASH进行在线写入升级程序。 FLASH介绍 本次设计FLASH选用的是S25FL128芯片&…...
企业内训|高智能数据构建、Agent研发及AI测评技术内训-吉林省某汽车厂商
吉林省某汽车厂商为提升员工在AI大模型技术方面的知识和实践能力,举办本次为期8天的综合培训课程。本课程分为两大部分:面向全体团队成员的AI大模型技术结构与行业应用,以及针对技术团队的高智能数据构建与Agent研发。课程内容涵盖非结构化数…...
ARM异常处理 M33
1. ARMv8-M异常类型及其详细解释 ARMv8-M Exception分为两类:预定义系统异常(015)和外部中断(1616N)。 各种异常的状态可以通过Status bit查看,获取更信息的异常原因: CFSR是由UFSR、BFSR和MMFSR组成: 下面列举HFSR、MMFSR、…...
(补)算法刷题Day24: BM61 矩阵最长递增路径
题目链接 思路 方法一:dfs暴力回溯 使用原始used数组4个方向遍历框架 , 全局添加一个最大值判断最大的路径长度。 方法二:加上dp数组记忆的优雅回溯 抛弃掉used数组,使用dp数组来记忆遍历过的节点的最长递增路径长度。每遍历到已…...
探索 Bokeh:轻松创建交互式数据可视化的强大工具
探索 Bokeh:轻松创建交互式数据可视化的强大工具 在数据科学和数据分析领域,交互式数据可视化是一项不可或缺的技能。Bokeh 是一个强大的 Python 库,它可以帮助我们快速构建高质量的交互式图表和仪表盘,同时兼具高性能和灵活性。…...
【Rust自学】6.1. 定义枚举
喜欢的话别忘了点赞、收藏加关注哦,对接下来的教程有兴趣的可以关注专栏。谢谢喵!(・ω・) 6.1.1. 什么是枚举 枚举允许我们列举所有可能的值来定义一个类型。这与其他编程语言中的枚举类似,但 Rust 的枚举更加灵活和强…...
【Java基础面试题035】什么是Java泛型的上下界限定符?
回答重点 Java泛型的上下界限定符用于对泛型类型参数进行范围限制,主要有上界限定符和下届限定符。 1)上界限定符 (? extends T): 定义:通配符?的类型必须是T或者T的子类,保证集合元素一定是T或者T的子类作用&…...
SO-ARM100机械臂Feetech舵机控制SDK独立封装实战
1. 为什么需要独立封装Feetech舵机控制SDK 当你第一次拿到SO-ARM100机械臂时,可能会直接使用LeRobot框架进行控制。这个框架确实提供了完整的解决方案,但就像带着整个工具箱去拧一颗螺丝——过度依赖框架会导致几个实际问题: 依赖臃肿&#x…...
技术领域驱动设计的建模方法
技术领域驱动设计的建模方法:构建高效系统的核心路径 在当今快速发展的软件工程领域,如何精准捕捉业务需求并将其转化为可落地的系统设计,一直是开发团队面临的挑战。技术领域驱动设计(Domain-Driven Design, DDD)的建…...
Open GApps包怎么选?从Platform到Variant,一次讲清安卓11/12 GMS安装包下载门道
Open GApps包选择指南:从Platform到Variant的完整解析 当你为定制ROM设备寻找合适的Google移动服务(GMS)安装包时,The Open GApps Project官网上的众多选项可能会让人眼花缭乱。面对Platform、Android版本和Variant等专业术语,很多用户往往感…...
高性能PCB逆向工程工具:OpenBoardView企业级电路板分析架构解析
高性能PCB逆向工程工具:OpenBoardView企业级电路板分析架构解析 【免费下载链接】OpenBoardView View .brd files 项目地址: https://gitcode.com/gh_mirrors/op/OpenBoardView OpenBoardView是一款面向硬件工程师和PCB逆向工程的专业级开源电路板文件查看器…...
暗黑破坏神2存档编辑器:3步打造你的完美游戏角色
暗黑破坏神2存档编辑器:3步打造你的完美游戏角色 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 还在为暗黑破坏神2的角色属性不够理想而烦恼?或者想体验不同的装备组合却不想重新练级?今天我…...
VMware Horizon Client安全连接失败?Fiddler HTTPS拦截惹的祸(附详细解决方案)
VMware Horizon Client安全连接失败的深度排查与解决方案 当你正专注于远程办公或虚拟桌面环境的管理时,突然遭遇VMware Horizon Client无法建立安全连接的情况,这种中断不仅影响工作效率,还可能引发数据同步的连锁问题。特别是在使用Fiddler…...
大模型工程化成熟度测评指南(SITS2026官方适配版):12项指标自评表+3个高危信号预警+1次免费基准评估入口
第一章:SITS2026发布:大模型工程化成熟度模型 2026奇点智能技术大会(https://ml-summit.org) SITS2026(Software Intelligence & Trustworthiness Scale 2026)是首个面向大模型全生命周期的工程化成熟度评估框架,…...
告别有线!用ESP32和Arduino IDE打造你的专属蓝牙音箱(保姆级教程)
用ESP32打造高性价比蓝牙音箱:从硬件组装到音频调优全指南 你是否厌倦了市面上千篇一律的蓝牙音箱?想要一个既能展现个性又具备专业音质的无线音频设备?ESP32开发板加上一些基础电子元件,就能让你以不到200元的成本打造出媲美千元…...
龙芯PMON USB驱动实现解析
这个目录看起来是龙芯 PMON (Processor Monitor) 固件中 USB 栈的实现。PMON 通常是一个轻量级的引导加载程序或固件环境,其 USB 驱动的实现方式可能与完整的 Linux 内核驱动有所不同,更倾向于直接硬件操作和简化的设备发现机制。 我将按照以下步骤详细解释这些文件的作用、…...
收藏!小白程序员快速入门大模型:23个核心概念轻松掌握
本文介绍了23个AI领域最常见的核心概念和术语,旨在帮助普通人与AI工具更好地打交道。文章从人工智能的基本定义出发,详细解释了机器学习、深度学习、神经网络、生成式AI、大语言模型等核心概念,并拓展了模型、训练、推理、幻觉等关键技术方法…...
