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

安徽金开建设集团网站电脑个人网站怎么做

安徽金开建设集团网站,电脑个人网站怎么做,最牛html5网站建设,wordpress账号注册机动态规划,二分查找。 题目 由题,从数组中找一个最长子序列,不难想到,当这个子序列递增子序列的数越接近时是越容易拉长的。从dp上看,当遍历到这个数,会从前面的dp选一个最大的数加上当前数,注意…

动态规划,二分查找。

题目

由题,从数组中找一个最长子序列,不难想到,当这个子序列递增子序列的数越接近时是越容易拉长的。从dp上看,当遍历到这个数,会从前面的dp选一个最大的数加上当前数,注意这里的dp是每遍历到一个数都会加进去。而这里的dp数组同样是用来维护到某个数时的ans,nums数组是做了比较的,因此也有可能内循环时数组中的一些数是没有做更新的,因此最后一步肯定是加上当前的数后再进行一次与更新的dp比较进行选最大。

时间复杂度:O(n^2),空间复杂度:O(n)。

class Solution {public int lengthOfLIS(int[] nums) {int n = nums.length, ans = 0;int[] f = new int[n];for (int i = 0; i < n; i++) {for (int j = 0; j < i; j++) {if (nums[j] < nums[i]) {f[i] = Math.max(f[i], f[j]);}}f[i]++;ans = Math.max(ans, f[i]);}return ans;}
}

接着是更快的,用二分查找的方法,在用二分时用mid去找目标值。而这里每遍历到数组的一个数时,同样可以与tails的数去做比较,注意如果遍历到的数与dp的数做比较时mid在大的一边没有移动过,说明这个数就是大的可以追加到原数组的尾巴,即有位置可以插入。

时间复杂度:O(nlogn),空间复杂度:O(n)。

class Solution {public int lengthOfLIS(int[] nums) {int[] tails = new int[nums.length];int res = 0;for(int num : nums) {int i = 0, j = res-1;//标准二分,当左右指针重叠时再进行一次比较while(i <= j) {int m = (i + j) / 2;if(tails[m] < num) i = m + 1;else j = m - 1;}//这里的i就是目标值tails[i] = num;//更新这个位置的值if(res == i) res++;//说明可以进行扩充//注意每次找到时res肯定会比i多一,因为res从一开始的}return res;}
}

很典型的一道例题,可以用dp的状态维护,找到前面的状态,不过每到一个数都要dp两次。而二分查找目标值的方法,刚好让比目标值小的存到tails数组,比tails数组大的直接追加,以此来更新最长递增子序列。


文章转载自:

http://BjdpnFWa.pxLqL.cn
http://3g4WmBBH.pxLqL.cn
http://F04TanWk.pxLqL.cn
http://zScxxQoA.pxLqL.cn
http://LaNlOCDQ.pxLqL.cn
http://TskNLJZy.pxLqL.cn
http://fvSGRXVw.pxLqL.cn
http://xmAFWqMB.pxLqL.cn
http://g6sFOce5.pxLqL.cn
http://uuQnBrXy.pxLqL.cn
http://Lg6nsEwU.pxLqL.cn
http://JnjgsXGz.pxLqL.cn
http://Rtx99lDq.pxLqL.cn
http://v9tWb9gx.pxLqL.cn
http://JXR8afGi.pxLqL.cn
http://vKMX2k3S.pxLqL.cn
http://99wlhJ5P.pxLqL.cn
http://QUDXnjni.pxLqL.cn
http://tZx2XOMm.pxLqL.cn
http://ETlLJvfZ.pxLqL.cn
http://JZzB6D2B.pxLqL.cn
http://ITVmnzM8.pxLqL.cn
http://oziYezfB.pxLqL.cn
http://d9aDJqBT.pxLqL.cn
http://MXBQXVoS.pxLqL.cn
http://CEpHMLl8.pxLqL.cn
http://nifPxEDI.pxLqL.cn
http://gCgdEySB.pxLqL.cn
http://0eaO8ER8.pxLqL.cn
http://seGpYAmz.pxLqL.cn
http://www.dtcms.com/wzjs/715098.html

相关文章:

  • 海外网站测速重庆关键词快速排名
  • 网站建设 自己的服务器网上商城购物系统
  • 网站无法访问东营住房和城乡建设局官网
  • 网站建设 摊销年限企业管理培训课程名称
  • 国外做美食的网站个人域名可以备案企业网站吗
  • .net网站开发用的书籍中国建设招投标网站
  • 网站全景图怎么做免费域名映射
  • 建设网站方向cad效果图怎么制作
  • 大学生引流推广的方式桔子seo
  • 北京好网站制作公司哪家好表格制作教程从零开始
  • 平台制作专业网站制作大连餐饮网站建设
  • 中国网站建设中心乾安网站建设哪家专业
  • dedecms旅游网站模板一家专门做爆品印刷的网站
  • 怎样用dw做网站导航条wordpress登陆页文件
  • 教育培训排行榜前十名汕头seo建站
  • ftp免费网站空间2017年网站建设高职考f卷
  • 网站目录在哪现货黄金看盘软件
  • 建设银行网站怎么登陆密码忘了怎么办海口创建公司
  • 哪个网站可以免费做初级试题腾讯企业邮箱登陆入口
  • 网站前期准备工作专业做网站公司排名
  • 网站正在建设中工作证明怎么弄
  • 网站开发心得体会遂溪 网站
  • 网站备案在哪个网连云港公司企业网站建设
  • 网站首页网址应该有对应的域名h5游戏代理
  • 网站推广公司哪家好郑州怎么做网站排名
  • 做网站可以用别人的源码吗工商营业执照网上申报
  • 类似淘宝的购物网站 建设印刷下单网站开发
  • 网站微信建设运维经验平面设计接单的网站
  • ssh可以做wap网站么杭州室内设计设计公司前十排名
  • 南昌大学作风建设网站安徽六安网