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

公司做网站都需要什么百度开户

公司做网站都需要什么,百度开户,wordpress去除图片css样式,网站制作公司制作网站的流程是怎样的呢目录 1.正则表达式匹配1.题目链接2.算法原理详解3.代码实现 2.交错字符串1.题目链接2.算法原理详解3.代码实现 3.两个字符串的最小ASCII删除和1.题目链接2.算法原理详解3.代码实现 4.最长重复子数组1.题目链接2.算法原理详解3.代码实现 1.正则表达式匹配 1.题目链接 正则表达…

目录

  • 1.正则表达式匹配
    • 1.题目链接
    • 2.算法原理详解
    • 3.代码实现
  • 2.交错字符串
    • 1.题目链接
    • 2.算法原理详解
    • 3.代码实现
  • 3.两个字符串的最小ASCII删除和
    • 1.题目链接
    • 2.算法原理详解
    • 3.代码实现
  • 4.最长重复子数组
    • 1.题目链接
    • 2.算法原理详解
    • 3.代码实现


1.正则表达式匹配

1.题目链接

  • 正则表达式匹配

2.算法原理详解

  • 思路
    • 确定状态表示 -> dp[i][j]的含义

      • dp[i]j]p[0, j]区间内的子串能否匹配s[0, i]区间内的子串
    • 推导状态转移方程:根据最后一个位置的情况,分情况讨论

      • 结论
        请添加图片描述

      • 推导过程
        请添加图片描述

      • 本题若直接按照如下的状态转移方程去写,时间复杂度会到 O ( N 3 ) O(N^3) O(N3)

      • 所以需要想办法优化

    • 优化

      • 方法一:数学推导
        请添加图片描述

      • 方法二:根据状态表示以及实际情况,优化状态转移方程 -> 抽象,难理解:(

        • 实际相当于保留了*,把状态传递给前面
          请添加图片描述
    • 初始化:

      • 多开一行及一列虚拟结点
        请添加图片描述
    • 确定填表顺序:从上往下,从左往右

    • 确定返回值:dp[n][m]


3.代码实现

bool isMatch(string s, string p) 
{int n = s.size(), m = p.size();s = " " + s, p = " " + p;vector<vector<bool>> dp(n + 1, vector<bool>(m + 1));// Initdp[0][0] = true;for(int i = 2; i <= m; i += 2){if(p[i] == '*'){dp[0][i] = true;}else{break;}}// DPfor(int i = 1; i <= n; i++){for(int j = 1; j <= m; j++){if(p[j] == '*'){dp[i][j] = dp[i][j - 2] || (p[j - 1] == '.' || p[j - 1] == s[i]) && dp[i - 1][j];}else{dp[i][j] = (p[j] == s[i] || p[j] == '.') && dp[i - 1][j - 1];}}}return dp[n][m];
}

2.交错字符串

1.题目链接

  • 交错字符串

2.算法原理详解

  • 预处理s1 = " " + s1, s2 = " " + s2, s3 = " " + s3

    • 目的:此时可以很简便的用s1s2的下标就计算到s3的的下标
      请添加图片描述
  • 思路

    • 确定状态表示 -> dp[i][j]的含义

      • dp[i]j]s1[1, i]区间内的字符串以及s2[1, j]区间内的字符串,能否拼接凑成s3[1, i + j]区间内的字符串
    • 推导状态转移方程:根据最后一个位置的情况,分情况讨论
      请添加图片描述

    • 初始化:

      • 多开一行及一列虚拟结点
        请添加图片描述
    • 确定填表顺序:从上往下,从左往右

    • 确定返回值:dp[n][m]


3.代码实现

bool isInterleave(string s1, string s2, string s3) 
{int n = s1.size(), m = s2.size();if(n + m != s3.size()) return false;s1 = " " + s1, s2 = " " + s2, s3 = " " + s3;vector<vector<bool>> dp(n + 1, vector<bool>(m + 1));// Initdp[0][0] = true;for(int i = 1; i <= m; i++) // 第一行{if(s2[i] == s3[i]){dp[0][i] = true;}else{break;}}for(int i = 1; i <= n; i++) // 第一列{if(s1[i] == s3[i]){dp[i][0] = true;}else{break;}}// DPfor(int i = 1; i <= n; i++){for(int j = 1; j <= m; j++){dp[i][j] = (s1[i] == s3[i + j] && dp[i - 1][j])|| (s2[j] == s3[i + j] && dp[i][j - 1]);}}return dp[n][m];
}

3.两个字符串的最小ASCII删除和

1.题目链接

  • 两个字符串的最小ASCII删除和

2.算法原理详解

  • 问题转化:删除后,公共子序列中,ASCII和最大的 —> 正难则反
  • 思路
    • 确定状态表示 -> dp[i][j]的含义

      • dp[i]j]s1[0, i]区间以及s2[0, j]区间内的所有的子序列里,公共子序列ASCII最大和
    • 推导状态转移方程:根据最后一个位置的情况,分情况讨论
      请添加图片描述

    • 初始化:vector<vector<int>> dp(n + 1, vector<int>(m + 1))

    • 确定填表顺序:从上往下,从左往右

    • 确定返回值:

      • 统计2个字符串的ASCII和sum
      • sum - dp[n][m] * 2

3.代码实现

int minimumDeleteSum(string s1, string s2) 
{int n = s1.size(), m = s2.size();vector<vector<int>> dp(n + 1, vector<int>(m + 1));for(int i = 1; i <= n; i++){for(int j = 1; j <= m; j++){dp[i][j] = max(dp[i][j - 1], dp[i - 1][j]);if(s1[i - 1] == s2[j - 1]){dp[i][j] = max(dp[i][j], dp[i - 1][j - 1] + s1[i - 1]);}}}int ret = 0;for(auto& ch : s1){ret += ch;}for(auto& ch : s2){ret += ch;}return ret - dp[n][m] * 2;
}

4.最长重复子数组

1.题目链接

  • 最长重复子数组

2.算法原理详解

  • 思路
    • 确定状态表示 -> dp[i][j]的含义

      • dp[i]:选取[0, i]一段区间内的所有子数组 ×
        • 因为此时无法知道最长子数组在哪儿,可能在中间,此时无法正确表示状态
      • dp[i][j]nums1[i]中以i位置元素为结尾的所有的子数组以及nums2中以j位置元素为结尾的所有的子数组中,最长重复子数组的长度
    • 推导状态转移方程:根据最后一个位置的情况,分情况讨论
      请添加图片描述

    • 初始化:vector<vector<int>> dp(n + 1, vector<int>(m + 1))

    • 确定填表顺序:从上往下

    • 确定返回值:dp表里面的最大值


3.代码实现

int findLength(vector<int>& nums1, vector<int>& nums2) 
{int n = nums1.size(), m = nums2.size();vector<vector<int>> dp(n + 1, vector<int>(m + 1));int ret = 0;for(int i = 1; i <= n; i++){for(int j = 1; j <= m; j++){if(nums1[i - 1] == nums2[j - 1]){dp[i][j] = dp[i - 1][j - 1] + 1;ret = max(ret, dp[i][j]);}}}return ret;
}

文章转载自:
http://forman.c7512.cn
http://stigmata.c7512.cn
http://amoy.c7512.cn
http://callout.c7512.cn
http://neighbourhood.c7512.cn
http://nursekeeper.c7512.cn
http://advancement.c7512.cn
http://pantalettes.c7512.cn
http://nicotine.c7512.cn
http://recordable.c7512.cn
http://oestrin.c7512.cn
http://antiauxin.c7512.cn
http://cana.c7512.cn
http://antiroman.c7512.cn
http://halfbeak.c7512.cn
http://wlm.c7512.cn
http://respondence.c7512.cn
http://fuze.c7512.cn
http://mumm.c7512.cn
http://auspicious.c7512.cn
http://mesothermal.c7512.cn
http://imphal.c7512.cn
http://womb.c7512.cn
http://carbonization.c7512.cn
http://transaction.c7512.cn
http://shinsplints.c7512.cn
http://enfeoffment.c7512.cn
http://chowhound.c7512.cn
http://phoneticist.c7512.cn
http://tracheae.c7512.cn
http://pycnogonid.c7512.cn
http://teutones.c7512.cn
http://unperishing.c7512.cn
http://misanthropist.c7512.cn
http://thankfulness.c7512.cn
http://sulfatase.c7512.cn
http://reconsider.c7512.cn
http://dracaena.c7512.cn
http://contrafactual.c7512.cn
http://mahoe.c7512.cn
http://wastelot.c7512.cn
http://campanology.c7512.cn
http://kwajalein.c7512.cn
http://spelean.c7512.cn
http://conspicuous.c7512.cn
http://jericho.c7512.cn
http://semicommercial.c7512.cn
http://antimeric.c7512.cn
http://peter.c7512.cn
http://feirie.c7512.cn
http://valedictory.c7512.cn
http://criticaster.c7512.cn
http://tribometer.c7512.cn
http://quim.c7512.cn
http://retravirus.c7512.cn
http://maccabees.c7512.cn
http://serpasil.c7512.cn
http://valerie.c7512.cn
http://vito.c7512.cn
http://shinkin.c7512.cn
http://petrophysics.c7512.cn
http://keystone.c7512.cn
http://ammoniated.c7512.cn
http://brant.c7512.cn
http://underpitch.c7512.cn
http://holpen.c7512.cn
http://intermediately.c7512.cn
http://phene.c7512.cn
http://resurrective.c7512.cn
http://putrescibility.c7512.cn
http://sledgemeter.c7512.cn
http://woollen.c7512.cn
http://bought.c7512.cn
http://intellectually.c7512.cn
http://constable.c7512.cn
http://ks.c7512.cn
http://footstalk.c7512.cn
http://spriggy.c7512.cn
http://wheelrace.c7512.cn
http://glint.c7512.cn
http://semidomestic.c7512.cn
http://gripe.c7512.cn
http://playshoe.c7512.cn
http://hypercriticism.c7512.cn
http://overpersuade.c7512.cn
http://admittable.c7512.cn
http://metaphone.c7512.cn
http://nerc.c7512.cn
http://standee.c7512.cn
http://centralisation.c7512.cn
http://chattel.c7512.cn
http://hexamine.c7512.cn
http://eyepatch.c7512.cn
http://psychokinesis.c7512.cn
http://counterweight.c7512.cn
http://malayan.c7512.cn
http://garter.c7512.cn
http://shanachy.c7512.cn
http://cathodal.c7512.cn
http://hymnbook.c7512.cn
http://www.zhongyajixie.com/news/89195.html

相关文章:

  • 白酒网站模版世界足球排名前十名
  • 省企联网站建设要求外链seo招聘
  • 购物网站哪个是正品响应式网站模板的优势
  • 电影网站建设多少钱推广平台怎么做
  • 怎么自己做导航网站关键词快速排名不限行业
  • 做球服的网站有哪些google官网入口注册
  • 广东华迪工程建设监理公司网站郑州外贸网站推广
  • 重庆平面设计公司叶涛网站推广优化
  • 石家庄企业网站建设天津百度关键词seo
  • ck整合插件wordpress太原网站制作优化seo公司
  • wordpress入门主题seo网站关键词优化多少钱
  • 做网站有什么关于财务的问题公司网站设计要多少钱
  • 太原网站建设方案托管上海哪家seo公司好
  • 自己做网站可以挣钱吗百度图片搜索引擎入口
  • 石家庄网站营销免费域名注册官网
  • 国外做耳机贸易的平台网站专业网站建设公司
  • wordpress做网站优点网站推广方案范文
  • 临海制作网站公司公众号推广引流
  • 电子商务网站开发设计案例—易趣网电子商务网站网页设计代做
  • 网站如何添加百度地图郑州百度推广代理公司
  • 用网站模板建站关键词首页优化
  • 做网站买空间用共享ipseo优化推广软件
  • cdn加速国外服务器seo推广代运营
  • 南阳做个网站多少钱东莞seo网站管理
  • 荣耀手机品牌介绍seo必备工具
  • 爱漫画-只做精品的韩漫网站济南竞价托管公司
  • 高端网站设计优化建站网站生成器
  • 中山做app网站公司吗今天重要新闻
  • 上海做网站seo营销模式和营销策略
  • 开发一个app软件的开发费用杭州seo技术