每日5题Day25 - LeetCode 121 - 125

每一步向前都是向自己的梦想更近一步,坚持不懈,勇往直前!

第一题:121. 买卖股票的最佳时机 - 力扣(LeetCode)

class Solution {public int maxProfit(int[] prices) {if(prices.length == 1){return 0;}//dp[0]代表最小值,dp[1]代表最大利润int[] dp = new int[2];dp[0] = prices[0];dp[1] = 0;for(int i = 1; i < prices.length; i++){dp[0] = Math.min(dp[0], prices[i]);dp[1] = Math.max(dp[1], prices[i] - dp[0]);}return dp[1];}
}

第二题:122. 买卖股票的最佳时机 II - 力扣(LeetCode)

class Solution {public int maxProfit(int[] prices) {//注意这个同一天卖掉//该题相当于计算每天我们能获得的利润//涨的时候都算,跌的时候都不算int res = 0;for(int i = 1; i < prices.length; i++){if(prices[i] - prices[i - 1] > 0){res += prices[i] - prices[i - 1];}}return res;}
}

第三题:123. 买卖股票的最佳时机 III - 力扣(LeetCode)

class Solution {public int maxProfit(int[] prices) {if(prices.length == 1){return 0;}//因为是最多是两笔交易//当为奇数时为买入的最低价//当为偶数时为卖出的最高价int[] dp = new int[4];dp[0] = -prices[0];dp[1] = 0;dp[2] = -prices[0];dp[3] = 0;for(int i = 1; i < prices.length; i++){dp[0] = Math.max(dp[0], -prices[i]);dp[1] = Math.max(dp[1], prices[i] + dp[0]);dp[2] = Math.max(dp[2], dp[1] - prices[i]);dp[3] = Math.max(dp[3], prices[i] + dp[2]);}return dp[3];}
}

第四题:124. 二叉树中的最大路径和 - 力扣(LeetCode)

class Solution {private int ans = Integer.MIN_VALUE;public int maxPathSum(TreeNode root) {dfs(root);return ans;}private int dfs(TreeNode node) {if (node == null)return 0; // 没有节点,和为 0int lVal = dfs(node.left); // 左子树最大链和int rVal = dfs(node.right); // 右子树最大链和ans = Math.max(ans, lVal + rVal + node.val); // 两条链拼成路径return Math.max(Math.max(lVal, rVal) + node.val, 0); // 当前子树最大链和}
}

 第五题:. - 力扣(LeetCode)

class Solution {public boolean isPalindrome(String s) {StringBuilder sb = new StringBuilder();for (char ch : s.toCharArray()) {if (Character.isLetterOrDigit(ch)) {sb.append(Character.toLowerCase(ch));}}String str = sb.toString();int l = 0, r = str.length() - 1;while (l < r) {if (str.charAt(l) != str.charAt(r)) {return false;}l++;r--;}return true;}
}

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

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

相关文章

【Qt实现绘制3D图形】

在Qt中实现绘制3D图形可以使用Qt 3D模块。Qt 3D模块提供了一个用于创建3D图形的框架&#xff0c;可以用于渲染、动画和交互。你可以使用Qt 3D中的实体&#xff08;Entity&#xff09;、组件&#xff08;Component&#xff09;和场景&#xff08;Scene&#xff09;等概念来构建和…

TJA1145休眠唤醒调试

目录 项目场景:TJA1145引脚图问题描述SPI链路验证休眠唤醒休眠唤醒配置唤醒报文配置代码相关寄存器:模式寄存器使能CAN唤醒设置唤醒边沿检测事件状态及捕获寄存器CANFD报文不会被识别为有效的唤醒帧项目场景: 最近开发过程中,选择了这颗芯片,踩了很多坑,总算是把这个芯片…

mysql报错Access denied for user ‘root‘,navicat可以连接mysql,spring不能连mysql

首先修改配置文件跳过验证&#xff0c;编辑你自己挂载的配置文件的位置 #查找my.cnf位置 sudo find / -name "my.cnf"编辑mysql配置文件 vim /opt/soft/mysql/conf/my.cnf #在[mysqld]下面添加 skip_grant_tables#重启mysql docker restart mysql#进入容器 docke…

在 Windows 环境下安装mysql步骤(MySQL)

文章目录 一、下载 MySQL二、解压安装包到磁盘三、配置环境&#xff08;管理员权限&#xff09;四、安装 MySQL&#xff08;管理员权限&#xff09; 一、下载 MySQL 如下图&#xff1a;为你的电脑下载对应操作系统的 MySQL 安装包 二、解压安装包到磁盘 三、配置环境&#x…

抽象工厂模式(大话设计模式)C/C++版本

抽象工厂模式 C 参考&#xff1a;https://www.cnblogs.com/Galesaur-wcy/p/15927110.html #include <iostream> using namespace std;// 抽象产品Department ,定义具体产品的公共接口 class Department { public:virtual ~Department() default;virtual void Insert()…

CC2500和CC1101移植说明

主要通过如何移植、移植注意、关于芯片配置、如何生成导出配置四大步骤来说明CC2500和CC1101移植 首先通过下图1这个宏进行选择 如何移植 要移植的部分在 CC2500_hal.c 和 CC2500_hal.h中, 搜索 "//移植" 就可以定位到 库 所需的依赖, 需要根据 您的环境实现这些…

(done) 什么是 perplexity 困惑度?

参考&#xff1a;https://www.youtube.com/watch?vB_2bntDYano 困惑度 perplexity 是一种用来衡量语言模型性能的度量&#xff0c;类似于交叉熵。 困惑度越低越好&#xff0c;越低说明一个模型越好。 一个典型的公式在下面&#xff1a;

Python学习打卡:day06

day6 笔记来源于&#xff1a;黑马程序员python教程&#xff0c;8天python从入门到精通&#xff0c;学python看这套就够了 目录 day648、函数综合案例49、数据容器入门50、列表的定义语法51、列表的下标索引1、列表的下标&#xff08;索引&#xff09;2、列表的下标&#xff08…

ubuntu 22.04 升级到24.04

Ubuntu 22.04升级到Ubuntu 23.04命令整理_ubuntu22升级23-CSDN博客 step1. sudo apt update sudo apt upgrade sudo apt dist-upgrade step2. sudo apt autoremove step3. sudo apt install update-manager-core step4. sudo vim /etc/update-manager/release-upgrades 将 Prom…

低压高频处理器

低压高频处理器相对于其他类型的处理器&#xff08;如标准电压处理器或者高性能桌面处理器&#xff09;具有一些明显的区别和特点&#xff1a; 功耗和热量管理&#xff1a; 低压高频处理器&#xff1a;以低电压运行&#xff0c;因此整体功耗较低&#xff0c;能够显著延长电池续…

CCAA质量管理【学习笔记】​​ 备考知识点笔记(四)

第四节 质量非数据资料分析的基础工具 1 关 联 图 2.1 概念 所谓关联图&#xff0c;就是对关系复杂而相互纠缠的问题&#xff0c;依据原因—结果或目的一手段等关系&#xff0c; 在逻辑上用箭头把各要素之间的因果关系连接起来&#xff0c;厘清复杂问题、整理语言文字资料…

技术转管理,是灾难还是奇迹?

深耕技术or转战管理&#xff1f;this is a question! 如果你还没有想好&#xff0c;那请继续往下看&#xff01; 技术专家&#xff1a;技术前瞻者、方案构建者、难题破解者、团队聚核者 管理专家&#xff1a;战略规划者、高效组织者、变革引领者、团队建设者 特点和重心都不在…

spring属性注入的不细心错误

属性注入问题 个人博客:www.zgtsky.top 同个的对象&#xff0c;在一个类中注入成功&#xff0c;在另一个类中注入为null 问题&#xff1a;在检测各个需要的类上已经打上注解后&#xff0c;出现了在一个类A1中注入B属性成功了&#xff0c;但在另一个类A2中注入B属性却失败了。…

《青少年编程与数学》课程方案:4、课程策略2_1

《青少年编程与数学》课程方案&#xff1a;4、课程策略2_1 一、工程师思维&#xff08;一&#xff09;工程师思维的要点&#xff08;二&#xff09;项目式学习&#xff08;三&#xff09;知识的构建&#xff08;四&#xff09;大概念教学&#xff08;五&#xff09;记忆和理解 …

leetcode刷题记录:hot100强化训练2:二叉树+图论

二叉树 36. 二叉树的中序遍历 递归就不写了&#xff0c;写一下迭代法 class Solution(object):def inorderTraversal(self, root):""":type root: TreeNode:rtype: List[int]"""if not root:return res []cur rootstack []while cur or st…

iPad键鼠充电otg转接器 | LDR6020解决方案

随着科技的快速发展&#xff0c;iPad已经成为我们日常生活中不可或缺的一部分。它不仅是一个娱乐工具&#xff0c;更是一个高效的生产力工具。为了更好地满足用户的需求&#xff0c;iPad支持在充电的同时连接鼠标和键盘&#xff0c;极大地提升了使用的便捷性和效率。 iPad键鼠同…

MySQL入门学习-子查询.ANY

在 MySQL 数据库中&#xff0c;子查询是指一条查询语句嵌套在另一条查询语句中&#xff0c;可以用来实现复杂的查询逻辑。子查询通常在 WHERE 子句中使用&#xff0c;用于过滤或比较查询结果。 子查询 ANY 是指返回子查询结果集中的任意一个值&#xff0c;与其他子查询类型相比…

干部选拔任用的六条原则

在干部选拔任用的过程中&#xff0c;为确保选拔出的干部能够真正符合党和人民的期望&#xff0c;必须遵循以下六条原则&#xff1a; 一、党管干部原则 党管干部原则是指在整个干部选拔任用过程中&#xff0c;党要发挥总揽全局、协调各方的领导作用&#xff0c;确保选拔出的干…

学习编程应该怎么入门?

学习编程入门是一个逐步积累知识和实践经验的过程。以下是一些建议&#xff0c;帮助你顺利入门编程&#xff1a; 明确学习目标&#xff1a; 确定你想学习哪种编程语言&#xff08;如Python、JavaScript、Java、C等&#xff09;&#xff0c;这取决于你的兴趣、学习背景和职业目…

Vue 3 的 setup 函数使用及避坑指南

Vue 3 的 setup 函数是 Vue 3 Composition API 的核心部分&#xff0c;它使得代码的复用和组织变得更加简单。 setup 的基本用法&#xff1a; setup 函数是在组件实例被创建之后&#xff0c;但是在其被挂载之前被调用的。setup 函数接收两个参数&#xff1a;props 和 context。…