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

响应式网站建设品牌全网天下用html开发的wordpress主题

响应式网站建设品牌全网天下,用html开发的wordpress主题,百度搜索关键词排名查询,社区建站网站系统力扣题目链接 本题有一个简单的解法是动态规划,时间复杂度 O(n^2),笔者在之前曾做过相关记录:300.最长递增子序列 现在我们来讨论 O ( n l o g ( n ) ) O(nlog(n)) O(nlog(n))的解法 局部最优:如果我们希望上升子序列尽可能的长&a…

力扣题目链接
本题有一个简单的解法是动态规划,时间复杂度 O(n^2),笔者在之前曾做过相关记录:300.最长递增子序列
现在我们来讨论 O ( n l o g ( n ) ) O(nlog(n)) O(nlog(n))的解法

局部最优:如果我们希望上升子序列尽可能的长,则我们需要让序列上升得尽可能慢;
全局最优:最终遍历完整个数组,那么此时的序列长度为最长递增子序列。

所以有一个很直观的思路就出来了:

  • 我们维护一个递增数组 d[i],其中 i 表示最长上升子序列的末尾元素的最小值;
  • 我们开始遍历整个数组,在遍历到 nums[i] 时:
    • 如果 nums[i] > d[len] ,直接加入到 d 数组末尾,并且更新 len = len + 1;
    • 否则,在 d 数组中二分查找,找到一个比 nums[i] 小的数d[k],并更新 d[k +1] = nums[i]

这里举一个例子:
对于序列[0, 8, 4, 12, 2],

  • 第一步插入 0,d=[0];

  • 第二步插入 8,d=[0,8];

  • 第三步插入 4,d=[0,4];

  • 第四步插入 12,d=[0,4,12];

  • 第五步插入 2,d=[0,2,12]。

如果你能了解二分查找找到插入位置的话,此题非常简单

class Solution {
public:int lengthOfLIS(vector<int>& nums) {int n = nums.size();if (n == 0) {return 0; // 如果数组为空,返回 0}vector<int> d(n + 1, 0); // 用于存储最长递增子序列的数组int len = 1; // 当前 LIS 的长度d[len] = nums[0]; // 初始化第一个元素for (int i = 1; i < n; ++i) {if (nums[i] > d[len]) {// 如果 nums[i] 大于当前 LIS 的最后一个元素d[++len] = nums[i];} else {// 否则,在 d 数组中找到第一个大于或等于 nums[i] 的位置,并替换它int l = 1, r = len, pos = 0;while (l <= r) {int mid = (l + r) / 2;if (d[mid] < nums[i]) {pos = mid; // 找到小于 nums[i] 的最大位置l = mid + 1;} else {r = mid - 1;}}d[pos + 1] = nums[i]; // 替换位置 pos+1 处的值}}return len; // 返回最长递增子序列的长度}
};
http://www.yayakq.cn/news/545034/

相关文章:

  • 互联网营销师考试展示型网站一样做seo优化吗
  • 移动端网站的优点手机做图片设计哪个软件好
  • 濮阳网站建设价格共同建设网站协议
  • asp.net网站开发是什么建设部监理工程师考试网站
  • 做网站 使用权 所有权写一个网站需要什么技术
  • 网站切换图片做背景怎么写网站建设项目概况
  • 音乐建设网站建设视频网站流量
  • 爱奇艺网站建设费中英文的网站设计
  • 科技公司网站主页设计wordpress error
  • 大连建设网站的公司苏宁易购网站建设的目标
  • 做互联网小程序 和网站有没有前景百度推广助手app下载
  • 单页网站优化网站开发框架 c
  • 北京建站工作室工作总结ppt模板免费
  • 有做酒席酒水网站吗项目招商
  • 怎样临沂网站建设沈阳城乡建设工程信息网
  • 做网站开发多少钱赣州企业做网站
  • 网站优化之站外优化技巧营销型网站建设实训报告
  • 防城港市网站建设电子商务平台定制开发
  • 网站新闻后台怎么做wordpress搜索中文插件
  • 思途智旅游网站开发重庆公章备案查询网站
  • 网站建设主题有哪些注意事项东莞做营销网站建设
  • 有什么做ppt的网站吗英文网站
  • 深圳罗湖区住房和建设局网站企业形象设计的意义
  • 淘宝网站内站建设企业官网网页
  • 太原建站推广电子商务网站建设与营运
  • 莱芜可信赖的网站建设做一个好的网站需要什么
  • 有经验的南昌网站设计wordpress 回复 楼中楼
  • 数据需求 网站建设高端网站开发建设
  • 个人博客网站建设荆州建设网站
  • 自己建立网站教程优化平台建设公司