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

C++ | Leetcode C++题解之第300题最长递增子序列

题目:

题解:

class Solution {
public:int lengthOfLIS(vector<int>& nums) {int len = 1, n = (int)nums.size();if (n == 0) {return 0;}vector<int> d(n + 1, 0);d[len] = nums[0];for (int i = 1; i < n; ++i) {if (nums[i] > d[len]) {d[++len] = nums[i];} else {int l = 1, r = len, pos = 0; // 如果找不到说明所有的数都比 nums[i] 大,此时要更新 d[1],所以这里将 pos 设为 0while (l <= r) {int mid = (l + r) >> 1;if (d[mid] < nums[i]) {pos = mid;l = mid + 1;} else {r = mid - 1;}}d[pos + 1] = nums[i];}}return len;}
};
http://www.lryc.cn/news/408942.html

相关文章:

  • springboo 整合 redis
  • dpdk编译安装以及接收udp报文(基于ubuntu)
  • 【计算机网络】OSPF单区域实验
  • Java聚合快递小程序对接云洋系统程序app源码
  • 【React】详解组件通信:从基础到进阶的全面指南
  • 【vluhub】zabbix漏洞
  • openGauss触发器详解
  • 抄作业-跟着《React通关秘籍》捣鼓React-playground-上集
  • 80后最后的书信 年代
  • 软考-软件设计师(4)-计算机网络与安全:OSI七层、子网划分、网络安全控制技术、网络安全协议、网络安全威胁、对称与非对称加密等高频考点
  • Unity横板动作游戏 -为什么我又开始学习Unity,而不是Godot。
  • 什么是NIO
  • PHP switch 替代品 match
  • FastAPI(七十四)实战开发《在线课程学习系统》接口开发-- 删除留言
  • 面试重点---快速排序
  • [MIT6.5840]MapReduce
  • 【系统架构设计师】计算机组成与体系结构 ⑯ ( 奇偶校验码 | CRC 循环冗余码 | 海明码 | 模 2 除法 )
  • springboot,service 层统一异常抛出时,throws Exception写在接口上还是实现类上
  • 深度学习高效性网络
  • PyQt ERROR:ModuleNotFoundError: No module named ‘matplotlib‘
  • Flutter Geolocator插件使用指南:获取和监听地理位置
  • 网站基本布局CSS
  • ssm框架整合,异常处理器和拦截器(纯注解开发)
  • 古籍双层PDF制作教程:保姆级古籍数字化教程
  • Git 删除 远端的分支
  • PrgogressBar实现原理分析
  • 【HarmonyOS】HarmonyOS NEXT学习日记:七、页面与组件的生命周期
  • 【iOS】——Block循环引用
  • shell脚本自动化安装启动各种服务
  • Python - 开源库 ReportLab 库合并 CVS 和图像生成 PDF 文档