首页 > 其他分享 >最长上升子序列

最长上升子序列

时间:2023-10-28 22:56:18浏览次数:32  
标签:arr return int max res 序列 上升 最长 dp

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 给定数组的最长严格上升子序列的长度。
     * @param arr int整型一维数组 给定的数组
     * @return int整型
     */
    public int LIS (int[] arr) {
        // write code here
        if(arr.length == 0){
            return 0;
        }
        // dp 表示以它为底的最长序列的长度
        int res = 1;
        int[] dp = new int[arr.length];
        dp[0] = 1;// 初始化
        for(int i=1; i<dp.length; i++){
            int max=1;
            for(int j=0;j<i;j++){
                if(arr[i]>arr[j]){
                    // 说明可以查看,到达最大长度
                    max = Math.max(dp[j]+1, max);
                }
            }
            dp[i] = max;
            res = Math.max(max, res);

        }
        return res;
    }
}

  

标签:arr,return,int,max,res,序列,上升,最长,dp
From: https://www.cnblogs.com/yingpu/p/17794821.html

相关文章

  • 2、关于网络中接受的数据如何序列化和反序列化的思考以及实现
    1、背景介绍因工作接触到半导体行业,主要负责EAP相关的东西,其中需要实现SECS/GEM协议,消息协议使用的是SECS-II,其中有一种数据类型是A类型,表示字符串类型。需要将接收到的SECS指令记录在日志中,以及反解析SECS指令。我们知道,网络中接受到的数据都是byte,需要自己根据规......
  • php-SER-libs-main反序列化靶场部分wp
    什么是序列化/反序列化,为什么要进行序列化/反序列化序列化:有时需要把一个对象在网络上传输,为了方便传输,可以把整个对象转化为二进制串,等到达另一端时,再还原为原来的对象,这个过程称之为串行化(也叫序列化)。反序列化:将序列化的结果还原PHP序列化:把对象转化为二进制的字符......
  • Java反序列化之URLDNS链
    Java反序列化之URLDNS链一、漏洞简介URLDNS链是java原生态的一条利用链,通常用于存在反序列化漏洞进行验证的,因为是原生态,不存在什么版本限制。该链有以下三个特点:不限制jdk版本,使用Java内置类,对第三方依赖没有要求目标无回显,可以通过DNS请求来验证是否存在反序列化漏洞URLD......
  • php反序列化2023/10/28
    题目来源:[第五空间2021]pklovecloud题目代码如下:<?phpinclude'flag.php';classpkshow{functionecho_name(){return"Pkverysafe^.^";}}classacp{protected$cinder;public......
  • Python时间序列分析库介绍:statsmodels、tslearn、tssearch、tsfresh
    时间序列分析在金融和医疗保健等领域至关重要,在这些领域,理解随时间变化的数据模式至关重要。在本文中,我们将介绍四个主要的Python库——statmodels、tslearn、tssearch和tsfresh——每个库都针对时间序列分析的不同方面进行了定制。这些库为从预测到模式识别的任务提供了强大的工......
  • P6185 [NOI Online #1 提高组] 序列
    P6185首先考虑只有\(t=2\)的情况,我们发现假如把读入的所有边连成一张图,则在同一联通块的点可以通过不断传递做到一个\(+1\)一个\(-1\),也就是说在这个联通块内的点的和是不会改变的,因此让这个联通块内\(a_i=b_i\)就等价于\(\suma_i=\sumb_i\)然后考虑只有\(t=1\)......
  • C#复杂XML反序列化为实体对象两种方式
    目录前言需要操作的Xml数据一、通过是手写的方式去定义Xml的实体对象模型类二、通过VisualStudio自带的生成Xml实体对象模型类3、以下是使用VS自动生成的Xml类验证两个Xml类是否能够反序列化成功C#XML基础入门(XML文件内容增删改查清)C#XmlHelper帮助类操作Xml文档的通用方法汇总.......
  • winforms的datagridview内设置右键菜单,并删除指定一行,之后序列号改变
    一、编辑右键菜单  1、在工具箱中拖入一个contextMenuStrip控件;  2、编辑contextMenuStrip控件,在控件内添加想要的选项,在此添加“删除”选项;  3、(可选项)绑定DataGridView和新增的contextMenuStrip1,选中DataGridView,属性,contextMenuStrip中选择下拉:contextMenuStrip1......
  • 反序列化 序列化
    stringjsonStr="{\"name\":\"张三\",\"age\":\"10\","+"\"classroom\":{\"name\":\"1年级1班\",\"desc\":\"描述\"},"+"\......
  • Yii反序列化漏洞的学习
    Yii反序列化漏洞的学习Yii框架Yii是一个适用于开发Web2.0应用程序的高性能PHP框架。Yii是一个通用的Web编程框架,即可以用于开发各种用PHP构建的Web应用。因为基于组件的框架结构和设计精巧的缓存支持,它特别适合开发大型应用,如门户网站、社区、内容管理系统(CMS)、电子......