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

潮州有没有做网站的人域名停靠

潮州有没有做网站的人,域名停靠,公司注册网上核名几个字,网站开发专业职称有哪些最长上升子序列(最长递增子序列,LIS) 给定长度为 n n n的序列 v v v,求此序列中严格递增(上升)的子序列长度最大值(子序列可由原序列中不连续的元素构成) 朴素DP( O ( n 2 ) O(n^2) O(n2)) 闫氏DP分析法 状态表示: 集合 d p dp dp:所有满足…

最长上升子序列(最长递增子序列,LIS)

给定长度为 n n n的序列 v v v,求此序列中严格递增(上升)的子序列长度最大值(子序列可由原序列中不连续的元素构成)

朴素DP( O ( n 2 ) O(n^2) O(n2))

闫氏DP分析法

  • 状态表示:

    • 集合 d p dp dp:所有满足递增条件的元素集
    • 属性: M a x Max Max d p [ i ] dp[i] dp[i]表示以 i i i结尾的最长递增子序列长度, i n i t ( d p ) = 1 init(dp)=1 init(dp)=1
  • 状态计算:

    • i i i为当前工作区间尾指针, j j j为当前工作区间工作指针
    • i i i不可选: v [ i ] ≤ v [ j ] v[i]\le v[j] v[i]v[j],不满足递增条件,不选
    • i i i可选: v [ i ] > v [ j ] v[i]>v[j] v[i]>v[j]
      • i i i d p [ i ] dp[i] dp[i]长度继承自 d p [ j ] dp[j] dp[j] d p [ i ] = d p [ j ] + 1 dp[i]=dp[j]+1 dp[i]=dp[j]+1
      • 不选 i i i:该子序列 [ [ 1 ] , [ . . . ] , [ j ] ] [[1],[...],[j]] [[1],[...],[j]]可能是一个非最优子序列或最优子序列的子序列, d p [ i ] = d p [ i ] dp[i]=dp[i] dp[i]=dp[i]
  • 转移方程式: d p [ i ] = m a x ( d p [ i ] , d p [ j ] + 1 ) dp[i]=max(dp[i],dp[j]+1) dp[i]=max(dp[i],dp[j]+1)

extern vector<int>v,dp;
int lis(){fill(dp.begin(),dp.end(),1);for(int i=0;i<v.size();i++)for(int j=0;j<i;j++)if(v[i]>v[j])//v[i]可选dp[i]=max(dp[i],dp[j]+1);return *max_element(dp.begin(),dp.end());
}

贪心(O( n log ⁡ 2 n n\log_2n nlog2n))

思路:设原序列 v v v,答案序列 a n s ans ans,当前工作指针为 i i i。初始化 a n s [ 0 ] = v [ 0 ] ans[0]=v[0] ans[0]=v[0],遍历原序列 v v v

  • v [ i ] v[i] v[i]> a n s . b a c k ( ) ans.back() ans.back(),则将 v [ i ] v[i] v[i]加入 a n s ans ans末尾
  • 否则,用 v [ i ] v[i] v[i]替换 a n s ans ans中首个 ≥ v [ i ] \ge v[i] v[i]的元素。由于 a n s ans ans始终有序,故可采用二分加速
extern int n;
extern vector<int>v,ans;
void lis(){ans.push_back(v[0]);for(auto i:v){if(i>ans.back()]) ans.push_back(i);else ans[distance(ans.begin(),lower_bound(ans.begin(),ans.end(),i))]=i;}cout<<ans.size()<<endl;
}

LCS求解LIS( O ( n 2 ) O(n^2) O(n2),不常用)

思路:将原序列 v v v排序得到序列 v ′ v' v,两序列的 L C S LCS LCS也为有序,即为原序列 v v v L I S LIS LIS。此方法存在缺陷,仅适用于原序列 v v v不存在重复元素的情况,否则会出现错误。下面仅以二维 d p dp dp数组的 L C S LCS LCS举例

extern int n,v1[MAX],v2[MAX],dp[MAX][MAX];
void lcs(){for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)if(v1[i-1]==v2[j-1]) dp[i][j]=dp[i-1][j-1]+1;else dp[i][j]=max(dp[i-1][j],dp[i][j-1]);cout<<dp[n][n]<<endl;
}

最长连续上升子序列

转移方程式: d p [ i ] = d p [ i − 1 ] + 1 dp[i]=dp[i-1]+1 dp[i]=dp[i1]+1

extern vector<int>v,dp;
void lcis(){fill(dp.begin(),dp.end(),1);for(int i=1;i<v.size();i++)if(v[i]>v[i-1])dp[i]=dp[i-1]+1;return *max_element(dp.begin(),dp.end());
}

复杂度 O ( n ) O(n) O(n)

http://www.ds6.com.cn/news/89896.html

相关文章:

  • 江西省大余县建设局网站设计好看的网站
  • 网站在工信部备案查询已备案域名30元
  • 有专门教做家具的网站百度推广登录入口下载
  • wordpress生成海报分享seo是什么专业
  • 神一般的网页设计网站个人做外贸怎样起步
  • 做网站有发展吗seo词库排行
  • php和mysql做租车网站百度指数查询工具app
  • 做物流网站的多少钱武汉网站快速排名提升
  • 织梦网站修改幻灯片深圳优化网站方法
  • 瑜伽wordpress模板鞍山seo公司
  • wordpress linux 权限设置seo结算系统
  • 西安建站模板厂家google play
  • 网站开发实战网络课重庆网站
  • 网站建设 网址导航东莞网络营销
  • 做百度移动网站优免费私人网站建设软件
  • 外贸在什么网站做郑州做网络营销渠道
  • oa系统网站建设真实的网站制作
  • 国内代理ip地址 免费如何进行seo搜索引擎优化
  • 武汉便宜的做网站公司微信营销怎么做
  • 个人怎么做微信公众号和微网站吗白帽seo是什么
  • 做网站烧钱产品如何推广市场
  • 电脑做系统哪个网站比较好用seo的含义
  • linux网站开发百中搜优化软件
  • wordpress注释seo属于什么职位类型
  • 网站快速排名服务商宁波网络营销怎么做
  • 有没有找人做标书的网站广东网站营销seo费用
  • 做app网站有哪些软文推广模板
  • 响应式网站建设平台seo搜索引擎优化实训报告
  • 国内做设计的网站建设sem培训机构
  • 网站建设基本范例比较好的搜索引擎