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

采用什么方法推广网站东圃做网站公司

采用什么方法推广网站,东圃做网站公司,百度网站建设目标,wordpress 弹出1.背包问题 #xff08;1#xff09;01背包 从n个重量和价值分别为wi,vi的物品#xff0c;从中选出不超过W的物品#xff0c;每种物品仅有一件#xff0c;求所有方案中V的最大值。 最朴素最简单也最费时的方法#xff1a;O(2^n) int rec(int i,int j)//从第i个开始挑选总…1.背包问题 101背包 从n个重量和价值分别为wi,vi的物品从中选出不超过W的物品每种物品仅有一件求所有方案中V的最大值。 最朴素最简单也最费时的方法O(2^n) int rec(int i,int j)//从第i个开始挑选总重小于j的部分 递归  递归终止条件in  return 0;       递归分支① jwi resrec(i1,j);  //无法挑选看下一个                 ② resmax(rec(i1,j),rec(i1,j-w[i])v[i]))//挑选不挑选选其中大的 分析递归搜索深度→n每层两次分支选与不选有重复计算 优化记录每次递归的结果记忆化搜索   Int dp[MAX_N][MAX_N]; 递归 int rec(int i,int j)     初始条件memset(dp,-1,sizeof(dp)); 终止条件①dp[i][j]0 returndp[i][j]//已计算过 ②in return 0;     递归分支① jwi resrec(i1,j);  //无法挑选看下一个                 ② resmax(rec(i1,j),rec(i1,j-w[i])v[i]))//挑选不挑选选其中大的 分析及remark复杂度O(nW)    数组初始化①memset(type *arrary,figure,sizeof(arrary))                       只能填充0-10x3f3f3f3f其他值不可以                        memset按照1字节为单位对内存填充-1的二进制每一位均为1                       ②fill(type* arrary,type *arraryn,figure) 可赋值任意值     递归    ↓↓↓↓↓↓                  for(int in-1;i0;i--) // 递推(双重循环)           for(int j0;jw;j)                           { if(jw[i]) dp[i][j]dp[i1][j]; //不选                          else dp[i][j]max(dp[i1][j],dp[i1][j-w[i]]v[i]);} 其他3种递推写法来源《挑战程序设计竞赛》   2完全背包 递推关系13重循环有重复计算复杂度O(nW^2) For(int i0;in;i)  For(int j0;jw;j)   For(int k0;k*w[i]j;k)   Dp[i1][j]max(dp[i1][j],dp[i1][j-k*w[i]]k*v[i]) 优化(左上→右下  变为 左→右) Dp数组初始化为0 For(int i0;in;i)  For(int j0;jw;j) {  If(jw[i]) dp[i1][j]dp[i][j];  Else  dp[i1][j]max(dp[i][j],dp[i1][j-w[i]]v[i]) }           只有这里与01背包不同前j个已更新过可直接用   进一步优化用一个数组实现只需要记录当前最优状态 比较01背包与完全背包循环方向不同   2.LCS(Longest common subsequence)   dp[n][m]即为所求 for(int i0;in;i)   for(int j0;jm;j) {   if(s[i]t[i])    dp[i1][j1]dp[i][j]1; else    dp[i1][j1]max(dp[i1][j],dp[i][j1]) }   3.LIS(Longest Increasing subsequence)   dp[i]:以ai为结尾的最长上升子序列长度 dp[i]max{1,dp[i]1|ji且ajai} O(n^2) int res; for(int i0;in;i)  {   dp[i]1; for(int j0;ji;j)   if(a[j]a[i])              //每存在ajaiji,dp[i]更新一次    dp[i]max{dp[i],dp[j]1}; } resmax{dp[i]|0in} Remark: 其他方法 可以用lower_bound();    dp[i]:长度为i1的上升子列中末尾元素的最小值不存在的话为inf dp[max_n]初始化为inf按顺序逐个考虑数列的元素对于每个ai如果i0||dp[i-1]ai,就用dp[i]min(dp[i],ai)更新最终找出使得dp[i]inf的最大的i1即为结果。DP直接实现可以在On^2的时间内给出结果但可以进一步优化dp数组中除inf之外是单调递增的对于每个ai最多有一次更新更新的位置可用二分的方法优化时间复杂度可以降低到Onlogn int dp[max_n] void solve {   fill(dp,dpn,inf);   for(int i0;in;i)     *lower_bound(dp,dpn,a[i])a[i];   reslower_bound(dp,dpn,inf)-dp; } // lower_bound()可以从已排好序的a中利用二分搜索找出满足aik的ai的最小的指针类似的还有upper_bound,找出的为aik的最小指针 //求n个有序数组a中k的个数可以用upper_bound(a,an,k)-lower_bound(a,an,k);转载于:https://www.cnblogs.com/Egoist-/p/7391224.html
http://www.zqtcl.cn/news/302107/

相关文章:

  • 电商网站后台报价公司如何建站
  • 查网站有没有做推广企业网站建设的目标
  • 北京网站维护公司专业外贸网站建设_诚信_青岛
  • 网站自己做还是用程序制作网站一般使用的软件有哪些
  • 晨雷文化传媒网站建设济南互联网品牌设计
  • 怎样给自己的网站做防红连接梵客装饰公司官网
  • 甘肃省城乡与住房建设厅网站纪检网站建设动态主题
  • 关于做好全国网站建设网站建设哪个好
  • 灵犀科技网站建设企业建设网站作用
  • 做网站架构图无版权图片网站
  • 赌场需要网站维护吗通过服务推广网站的案例
  • 阿里云网站空间网站建设犭金手指六六壹柒
  • 网站排名软件包年农业网站开发
  • 建设信用卡网银网站crm客户关系管理论文
  • 阿里巴巴网站的搜索引擎优化案例软件开发收费价目表
  • 企业网站建设之域名篇wordpress 文章居中
  • 萍乡网站建设行吗南康建设局官方网站
  • 一键部署wordpress爱站seo工具
  • 大连网站建设服务做进料加工在哪个网站上做
  • 南昌行业网站建设网站版权信息修改
  • 百度网站关键词排名助手低成本做网站 白之家
  • 怎么查询网站是谁做的部队网站建设报告
  • 租房网站开发专业网站建设品牌策划方案
  • 电子商务网站建设方案书软件开发工具图片
  • 案例建网站宿松网站建设公司
  • 秦皇岛网站开发wordpress免费国内主题
  • seo网站推广推荐阳江房管局查询房产信息网
  • php服装商城网站建设个人网站免费空间
  • 做内贸注册什么网站广州市建设交易中心网站
  • 点样用外网访问自己做的网站北京市网站设计公司网址