当前位置: 首页 > news >正文

300. 最长递增子序列

题目描述

给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。

子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。

示例 1:

输入:nums = [10,9,2,5,3,7,101,18]
输出:4
解释:最长递增子序列是 [2,3,7,101],因此长度为 4 。

示例 2:

输入:nums = [0,1,0,3,2,3]
输出:4

示例 3:

输入:nums = [7,7,7,7,7,7,7]
输出:1

提示:

  • 1 <= nums.length <= 2500
  • -104 <= nums[i] <= 104

解答

class Solution {
public:int lengthOfLIS(vector<int>& nums) {// dp[i] 表示以 nums[i] 为结尾的最长递增子序列if(nums.size() <= 1) return nums.size();int n = nums.size();vector<int> dp(n, 1); // 每个数自己都为一个递增子序列int res = 0;for(int i = 1; i < n; ++i){// 求出以 nums[i] 结尾的最长递增子序列for(int j = 0; j < i; j++){if(nums[i] > nums[j]) dp[i] = max(dp[i], dp[j] + 1);}if(dp[i] > res) res = dp[i];}return res;}
};
http://www.lryc.cn/news/163623.html

相关文章:

  • DNS(域名解析系统)
  • 解决jsp/html界面跳转servlet出现404错误的方法
  • catface,使用Interface定义Controller,实现基于Http协议的RPC调用
  • Linux:LVS (NAT群集搭建)
  • 音乐格式转换mp3怎么转?跟着步骤操作一遍
  • it监控系统可以电脑吗?有什么效果
  • jvs-智能bi(自助式数据分析)9.1更新内容
  • MyBatis-Plus-扩展操作(3)
  • react 中 antd 的 样式和 tailwind 样式冲突
  • 获取该虚拟机的所有权失败,主机上的某个应用程序正在使用该虚拟机
  • 2024届校招-Java开发笔试题-S4卷
  • 数据分析面试题(2023.09.08)
  • jenkins 报错fatal:could not read Username for ‘XXX‘:No such device or address
  • LRU算法之我见
  • 【第20例】华为 IPD 体系 | IPD 的底层思考逻辑(限制版)
  • spaCy库的实体链接踩坑,以及spaCy-entity-linker的knowledge_base下载问题
  • 【数据结构】红黑树的插入与验证
  • Pycharm----将Anaconda建立的环境导入
  • 数字花园的指南针:微信小程序排名的提升之道
  • LRU与LFU的c++实现
  • 什么是Docker和Docker-Compose?
  • 三.listview或tableviw显示
  • 【算法】一文带你从浅至深入门dp动态规划
  • 超简单免费转换ape到flac
  • JavaScript混淆加密
  • Java8特性-Lambda表达式
  • 通过Power Platform自定义D365CE业务需求 - 1. Microsoft Power Apps 简介
  • 简易实现QT中的virtualkeyboard及问题总结
  • 景联文科技可为多模态语音翻译模型提供数据采集支持
  • 定时器分批请求数据