代码随想录训练营第五十二天1143.最长公共子序列1035.不相交的线53. 最大子序和

1143.最长公共子序列

题目链接 1143. 最长公共子序列 - 力扣(LeetCode)

讲解链接 代码随想录 (programmercarl.com)

 给定两个数组,求最长公共子序列,此时dp数组需要用二维的,dp[i][j]表示下表i-1.j-1所能拥有的最长公共子序列长度(为了方便定义,故而用i-1,j-1),此时两个数组i,j元素有两种可能:相等,此时dp[i][j]=dp[i-1][j-1]+1;不相等,dp[i][j]=max(dp[i-1][j],dp[i][j-1])因为是所能达到的最大长度,故要取两个的最大值:

        for(int i=1;i<=text1.size();i++){for(int j=1;j<=text2.size();j++){if(text1[i-1]==text2[j-1]){dp[i][j]=dp[i-1][j-1]+1;}else{dp[i][j]=max(dp[i][j-1],dp[i-1][j]);}}}

1035.不相交的线

题目链接 1035. 不相交的线 - 力扣(LeetCode)

讲解链接 代码随想录 (programmercarl.com)

 题目描述虽然不同,但是本质却是一样的,找出按数序排列的相同子序列,并返回所能达到的最大值,故而只需要把代码字符串换成数组即可:

        vector<vector<int>>dp(nums1.size()+1,vector<int>(nums2.size()+1,0));for(int i=1;i<=nums1.size();i++){for(int j=1;j<=nums2.size();j++){

53. 最大子序和

题目链接 53. 最大子数组和 - 力扣(LeetCode)

讲解链接 代码随想录 (programmercarl.com)

 动态规划五部曲:

首先定义dp数组含义:dp[i]表示以下标i结尾的额最大子序列和;

其次,dp数组初始化dp[0]=nums[0];

递归函数:dp[i]有两种来由:1、当前数字作为结尾,续上,此时dp[i]=dp[i-1]+nums[i],

                                                2、从当前数字从新开始,dp[i]=nums[i];

递归方向,从头到尾:

        vector<int>dp(nums.size(),0);dp[0]=nums[0];int result=nums[0];for(int i=1;i<nums.size();i++){dp[i]=max(dp[i-1]+nums[i],nums[i]);if(dp[i]>result)result=dp[i];}return result;  

每次将最大的和存入结果中。

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

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

相关文章

状态模式-C++实现

状态模式是一种行为型设计模式&#xff0c;它允许对象内部状态发生改变时改变其行为&#xff0c;它将行为封装在不同的状态对象中&#xff0c;在运行时通过切换不同的状态可以表现出不同的行为。 状态模式一般有三种角色&#xff1a; 1、状态接口&#xff1a;定义了状态对象所…

Fiddler抓包工具之Fiddler+willow插件应用

安装Fiddler的安装包地址&#xff1a;fillderwillow 解压后安装fiddler4和willow1.4.*版本。 安装成功后&#xff0c;启动fiddler后会出现willow插件按钮&#xff1a; 说明安装成功。 重定向 willow重定向 进入willow界面后&#xff0c;通过右键->Add Project ->Add Ru…

鸿蒙开发学习笔记

快速入门 配置网络权限 1.打开项目的 module.json5 文件 2.在module 里面写下面代码 3.这样就可以使用网络图片了 4.模拟器上就可以正常显示网络图片了 5.官方文档有相吸说明 6. 华为官方编辑工具使用技巧&#xff08;内置文档&#xff09;&#xff0c;鼠标移动到标签上&…

对于Kotlin DSL的简单解析与使用

DSL(领域特定语言)是Kotlin所带来的强大语法特性之一&#xff0c;也是Java中所不存在的功能&#xff0c;JetBrain也基于DSL开发出了众多的开源库&#xff0c;Kotlin的开发者可以使用DSL来重构许多已有的代码&#xff0c;甚至有可能做到彻底抛弃HTML&#xff0c;XML&#xff0c;…

Mysql——》int(1)和 int(10)区别

推荐链接&#xff1a; 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD…

【Python百宝箱】数据格式化大作战:探索Python强大的转换和验证库

前言 在现代数据处理和转换的领域中&#xff0c;Python成为了一种强大而灵活的工具。数据格式的转换和验证对于数据科学家、工程师和分析师而言是至关重要的任务。本文将介绍一系列Python库&#xff0c;它们能够处理各种数据格式&#xff0c;从JSON、XML到Excel和Pickle等&…

electron持久化cookie的方法,从session中获取

文章目录 1. 持久化方法2. 代码说明3. 补充 1. 持久化方法 session.defaultSession.cookies.get({}).then((cookies) > {// 恢复cookie现场cookies.forEach((cookiesItem) > {let { secure false, domain "", path "" } cookiesItem;BrowserWin…

零基础打靶—CTF4靶场

一、打靶的主要五大步骤 1.确定目标&#xff1a;在所有的靶场中&#xff0c;确定目标就是使用nmap进行ip扫描&#xff0c;确定ip即为目标&#xff0c;其他实战中确定目标的方式包括nmap进行扫描&#xff0c;但不局限于这个nmap。 2.常见的信息收集&#xff1a;比如平常挖洞使用…

Python标准库:math库【侯小啾python领航班系列(十六)】

Python标准库:math库【侯小啾python领航班系列(十六)】 大家好,我是博主侯小啾, 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ…

【每日一题】找出叠涂元素

文章目录 Tag题目来源题目解读解题思路方法一&#xff1a;哈希表 写在最后 Tag 【哈希表】【数组】【2023-12-01】 题目来源 2661. 找出叠涂元素 题目解读 从左往右遍历 arr 给矩阵 mat 上色&#xff0c;在上色的过程中矩阵的某一行或者某一列的全部被上色了&#xff0c;返回…

(C语言)找出1-99之间的全部同构数

同构数&#xff1a;它出现在平方数的右边。例&#xff1a;5是25右边的数&#xff0c;25是625右边的数&#xff0c;即5和25均是同构数。 #include<stdio.h> int main() {for(int i 1;i < 100;i ){if((i*i % 10 i) || (i*i % 100 i))printf("%d\t%d\n",i,…

第6章 异步爬虫

目录 1. 协程的基本原理1.1 案例引入1.2 基础知识阻塞非阻塞同步异步多进程协程 1.3 协程的用法1.4 定义协程1.5 绑定回调1.6 多任务协程1.7 协程实现1.8 使用aiohttp安装使用 2. aiohttp的使用2.1 基本介绍2.2 基本实例2.3 URL参数设置2.4 其他请求类型2.5 POST请求表单提交JS…

Java数据结构之《哈希查找》题目

一、前言&#xff1a; 这是怀化学院的&#xff1a;Java数据结构中的一道难度中等的一道编程题(此方法为博主自己研究&#xff0c;问题基本解决&#xff0c;若有bug欢迎下方评论提出意见&#xff0c;我会第一时间改进代码&#xff0c;谢谢&#xff01;) 后面其他编程题只要我写完…

ChatGPT成为“帮凶”:生成虚假数据集支持未知科学假设

ChatGPT 自发布以来&#xff0c;就成为了大家的好帮手&#xff0c;学生党和打工人更是每天都离不开。 然而这次好帮手 ChatGPT 却帮过头了&#xff0c;莫名奇妙的成为了“帮凶”&#xff0c;一位研究人员利用 ChatGPT 创建了虚假的数据集&#xff0c;用来支持未知的科学假设。…

HarmonyOS应用开发——程序框架UIAbility、启动模式与路由跳转

前言 UIAbility简单来说就是一种包含用户界面的应用组件&#xff0c;用于和用户进行交互。每一个UIAbility实例&#xff0c;对应于一个最近任务列表中的任务。 一个应用可以有一个UIAbility&#xff0c;也可以有多个UIAbility。一个UIAbility可以对应于多个页面&#xff0c;建议…

半监督语义分割综述

paper link&#xff1a;https://arxiv.org/pdf/2302.09899.pdf 1. Introduction 图像分割是最古老、研究最广泛的计算机视觉 (CV) 问题之一。图像分割是指将图像划分为不同的非重叠区域&#xff0c;并将相应的标签分配给图像中的每个像素&#xff0c;最终获得ROI区域位置及其类…

线上CPU飙高问题排查!

https://v.douyin.com/iRTqH5ug/ linux top命令 top 命令是 Linux 下一个强大的实用程序&#xff0c;提供了系统资源使用情况的动态、实时概览。它显示了当前正在运行的进程信息&#xff0c;以及有关系统性能和资源利用情况的信息。 以下是 top 命令提供的关键信息的简要概述…

Linux 内核源码各版本下载

下载地址&#xff1a; kernel/git/stable/linux.git - Linux kernel stable treehttps://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/refs/ 1. Linux 内核的基本概念&#xff1a; 内核是什么&#xff1f; 内核是操作系统的核心部分&#xff0c;负责管理系统…

springboot工作原理

Spring Boot 是一个用于创建独立的、基于Spring框架的Java应用程序的开发框架。它简化了Spring应用程序的配置和部署过程&#xff0c;提供了一种快速、方便的方式来构建可扩展的、可部署的应用程序。 Spring Boot 的工作原理可以概括如下&#xff1a; 1. 自动配置&#xff08…

割裂式“多渠道”不是真正的全渠道!浅析全渠道零售和DTC在理念上的不谋而合|徐礼昭

图文&#xff1a;徐礼昭 全渠道零售概念解析 全渠道零售概念由来已久&#xff0c;单纯从业务经营角度&#xff0c;一个品牌在线上线下多个渠道铺货卖货&#xff0c;只能说是多渠道零售&#xff0c;而不是全渠道零售。商派市场负责人徐礼昭认为&#xff0c;品牌企业应该从消费者…