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

东莞网站建设图表h5制作工具手机版

东莞网站建设图表,h5制作工具手机版,某企业网站建设方案论文,网站诊断内容673. 最长递增子序列的个数 原题链接:完成情况:解题思路:方法一:动态规划方法二:贪心 前缀和 二分查找 参考代码:__673最长递增子序列的个数__动态规划__673最长递增子序列的个数__贪心_前缀和_二分查找…

673. 最长递增子序列的个数

  • 原题链接:
  • 完成情况:
  • 解题思路:
    • 方法一:动态规划
    • 方法二:贪心 + 前缀和 + 二分查找
  • 参考代码:
    • __673最长递增子序列的个数__动态规划
    • __673最长递增子序列的个数__贪心_前缀和_二分查找

原题链接:

673. 最长递增子序列的个数

https://leetcode.cn/problems/number-of-longest-increasing-subsequence/description/

完成情况:

在这里插入图片描述

解题思路:

方法一:动态规划

在这里插入图片描述

方法二:贪心 + 前缀和 + 二分查找

在这里插入图片描述

参考代码:

__673最长递增子序列的个数__动态规划

package 西湖算法题解___中等题;public class __673最长递增子序列的个数__动态规划 {public int findNumberOfLIS(int[] nums) {//给定一个未排序的整数数组 nums , 返回最长递增子序列的个数 。//注意: 这个数列必须是 严格 递增的。严格大于。//注意是返回最长递增子序列的个数/**每一个最长递增,都与之前的长度有关*/int numsLength = nums.length,maxLen = 0,res = 0;int dp_findNumberOfLIS [] = new int[numsLength];int count [] = new int[numsLength];for (int i = 0;i<numsLength;i++){dp_findNumberOfLIS[i] = 1;count[i] = 1;for (int j=0;j<i;j++){if (nums[i] > nums[j]){if (dp_findNumberOfLIS[j] + 1 > dp_findNumberOfLIS[i]){dp_findNumberOfLIS[i] = dp_findNumberOfLIS[j] + 1;count[i] = count[j];    //重置计数} else if (dp_findNumberOfLIS[j]+1 == dp_findNumberOfLIS[i]) {count[i]+=count[j];}}}if (dp_findNumberOfLIS[i] > maxLen){maxLen = dp_findNumberOfLIS[i];res = count[i];     //重制计数} else if (dp_findNumberOfLIS[i] == maxLen) {res += count[i];}}return res;}
}

__673最长递增子序列的个数__贪心_前缀和_二分查找

package 西湖算法题解___中等题;import java.util.ArrayList;
import java.util.List;public class __673最长递增子序列的个数__贪心_前缀和_二分查找 {public int findNumberOfLIS(int[] nums){List<List<Integer>> d = new ArrayList<List<Integer>>();List<List<Integer>> cnt = new ArrayList<List<Integer>>();for (int v : nums){int i = myBinarySearch1(d.size(),d,v);int c = 1;if (i > 0){int k = myBinarySearch2(d.get(i-1).size(),d.get(i-1),v);c = cnt.get(i-1).get(cnt.get(i-1).size()-1) - cnt.get(i-1).get(k);}if (i == d.size()){List<Integer> dList = new ArrayList<Integer>();dList.add(v);d.add(dList);List<Integer> cntList = new ArrayList<Integer>();cntList.add(0);cntList.add(c);cnt.add(cntList);}else {d.get(i).add(v);int cntSize = cnt.get(i).size();cnt.get(i).add(cnt.get(i).get(cntSize-1)+c);}}int size1 = cnt.size(),size2 = cnt.get(size1-1).size();return cnt.get(size1 - 1).get(size2-1);}/**** @param n* @param list* @param target* @return*/private int myBinarySearch2(int n, List<Integer> list, int target) {int left = 0,right = n;while (left < right){int mid = (left + right) /2;if (list.get(mid) < target){right = mid;}else {left = mid + 1;}}return left;}/*** * @param n* @param d* @param target* @return*/private int myBinarySearch1(int n, List<List<Integer>> d, int target) {int left = 0,right = n;while (left < right){int mid = (left + right) /2;List<Integer> list = d.get(mid);if (list.get(list.size() - 1) >= target){right = mid;}else {left = mid + 1;}}return left;}
}
http://www.15wanjia.com/news/194345.html

相关文章:

  • 建设局网站打不开是什么原因策划平台
  • 一个网站做十个二级域名项目交流平台
  • 二手商品网站制作wordpress链接前面的图标
  • 网站怎么做舆情监测建设厅电工证查询网站官方网
  • 如何经营一个购物网站wordpress 好用的编辑器
  • 品牌网站官网如何注册免费企业邮箱
  • 扫描购物网站建设海南网站设计公司
  • 网站建设登录结构图浙江网站建设上市公司
  • 微课做动画的网站本地搭建网站
  • 站长之家html模板wordpress菜单移到右边
  • 网站优化怎么做赚钱软件哪个赚钱多又快
  • 有什么可以在线做奥数题的网站陈巴尔虎旗网站建设
  • 铁岭 网站建设百度指数分是什么
  • 自己的电脑做网站服务器 买的服务器 速度必应搜索引擎网址
  • 生活服务类网站开发前端入职后很痛苦
  • 房屋装修效果图大全谷歌seo排名优化服务
  • 做教程网站如何查用户搜索wordpress里面主题文档怎么编辑
  • 完整网站开发视频高级网站开发技术使用什么语言
  • 在线动画手机网站模板下载怎样提交网站百度收录
  • 网站大型网页游戏邯郸网站建设
  • 找人做一个网站需要花多少钱wordpress注释
  • 企业网站设计的深圳公司wordpress中视频教程
  • 网站建设维护招聘电子商务网站建设说课稿
  • h5特效网站欣赏公司注册的流程与步骤
  • 品牌网站制作报价做网站用discuz还是wp
  • 各地平台网站二级网站如何一级域名
  • 建立一个自己的网站需要多少钱做国外营销型网站
  • 网站开发课设心得体会做餐厅网站的需求分析
  • 外贸正品网站口腔医院网站优化服务商
  • 网站可信查验网站建设费会计分录