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

如何才能做好品牌网站建设策划网站源码系统

如何才能做好品牌网站建设策划,网站源码系统,公司汇报网站建设方案,在网站和网页的区别判断子序列[https://leetcode.cn/problems/is-subsequence/description/] 题意#xff1a;给定字符串 s 和 t #xff0c;判断 s 是否为 t 的子序列。 思路#xff1a;从动态规划#xff0c; dp[i][j] 表示s的前i-1个元素和t的前j-1个元素相同的子序列元素的个数。 还要对d…判断子序列[https://leetcode.cn/problems/is-subsequence/description/] 题意给定字符串 s 和 t 判断 s 是否为 t 的子序列。 思路从动态规划 dp[i][j] 表示s的前i-1个元素和t的前j-1个元素相同的子序列元素的个数。 还要对dp初始化。dp[i][0] 表示在t空串的情况下s的前i-1个字符串的相等的情况。 都设为0 dp[0][j] 表示在s为空串的情况下与s的前j-1个字符串相等的情况。 状态转移 if(s[i-1] t[j-1]) dp[i][j] dp[i-1][j-1] 1 ; // 表示 个数加1 。 else dp[i][j] dp[i][j-1] ; // 表示现在的状态是s的前一个元素的状态。 不同子序列 题意两个字符串s, t 统计并返回在 s 的 子序列 中 t 出现的个数结果需要对 109 7 取模。 思路dp[i][j] 表示在s的前i-1个字符的情况下t的前j-1个字符出现的次数。 dp初始化dp[i][0] 表示s的前i-1个字符t空串出现的次数为1 。 dp[0][j] 0 表示s为空串的情况 t串出现的次数为0 。 因为有这样的例子 sbagg 和 tbag s[3] 和 t[2]是相同的但是字符串s也可以不用s[3]来匹配即用s[0]s[1]s[2]组成的bag。 dp[i][j] dp[i-1][j-1] dp[i-1][j] ; // 由s的上一个字符来达到。 动态转移 if(s[i-1] t[j-1]) // 分别由上一个迭代的dp[i][j] 的个数和dp[i-1][j]表示删除掉s的当前遍历元素的个数组成。 dp[i][j] dp[i-1][j-1] dp[i-1][j] ; else dp[i][j] dp[i-1][j] ; 代码 class Solution { public:int numDistinct(string s, string t) {const int N 1e310 ;// 可以映射为删除s的元素的方式使得s最后与t相等的个数vectorvectoruint64_t dp(s.size()10 , vectoruint64_t(t.size() 10 , 0)) ; // dp[i][j] 表示在s的前i-1的子串(子序列)出现t的前j-1个子串的个数。 for(int i 0 ; i s.size() ; i){dp[i][0] 1; // 表示s的前i-1个子串如何删除达到空字符串。 }// dpfor(int j 1 ; j t.size() ; j ){dp[0][j] 0 ; // 表示空字符串无论如何删除都达到不了j的状态。 }for(int i1 ; i s.size() ; i)for(int j 1 ; j t.size() ; j){if(s[i-1] t[j-1]){dp[i][j] dp[i-1][j-1] dp[i-1][j] ; // 分别由上一个迭代的dp[i][j] 的个数和dp[i-1][j]表示删除掉s的当前遍历元素的个数组成。 }else{dp[i][j] dp[i-1][j] ; }}for(int j 0 ; j 3 ; j){for(int i 0 ; i 7 ; i){coutdp[i][j] ; }coutendl ; }return dp[s.size()][t.size()] ; } };两个字符串的删除操作 题意给定两个单词 word1 和 word2找到使得 word1 和 word2 相同所需的最小步数每步可以删除任意一个字符串中的一个字符。 思路dp[i][j] 表示word1在i-1和word2在j-1之前相同的最小步数。 动态转移 当word1[i-1] word2[j-1] dp[i][j] dp[i-1][j-1] ; 当word1[i-1] ! word2[j-1] dp[i][j] min (dp[i-1][j] 1 , dp[i][j-1]1 , dp[i-1][j-1] 2 ) ; // 包括删除word1这个i元素 等于dp[i-1][j] 的状态 1 加一表示加上删除操作。 dp[i][j-1] 1 ; 和表示dp[i-1][j] 1 和两个字符串 都要删除自己末尾的元素。 代码 class Solution { public:int minDistance(string word1, string word2) {vectorvectoruint64_t dp(word1.size()10, vectoruint64_t(word2.size()10 , 0 )) ; // dp[i][j] 表示使word1的前i-1字符和word2的前j-1个字符的最小步数。 for(int i 0 ; i word1.size() ; i){dp[i][0] i ; // 步数是i1 删除i个字符串。 可以达到word2为空的状态。 }for(int j 0 ; j word2.size() ; j){dp[0][j] j ; // 步数是j1 ; 删除j个字符串 可以达到word1为空的状态}for(int i 1 ; i word1.size() ; i)for(int j 1 ; j word2.size() ; j){if(word1[i-1] word2[j-1]){dp[i][j] dp[i-1][j-1] ; }else{dp[i][j] min (dp[i-1][j] 1 ,min( dp[i][j-1] 1 , dp[i-1][j-1] 2 ) ) ; // 是要在dp[i-1 ] [j] 的状态下加1 。 和dp[i][j-1] 的状态下加1 或者 dp[i-1][j-1]的状态下加2中选一个最小的。 }}return dp[word1.size()][word2.size()] ; } };以上几个题是为最短编辑距离服务的 最短编辑距离 给定两个单词word1和word2 。请返回将 word1 转换成 word2 所使用的最少操作数 。 word2添加一个元素相当于word1删除一个元素例如 word1 “ad” word2 “a”word2添加一个元素d也就是相当于word1删除一个元素d操作数大小一样 思路 dp[i][j] 表示在word1在i-1之前和 word2在j-1之前的最少操作次数。 如果word1[i-1] word2[j-1] ; 那么 dp[i][j] dp[i-1][j-1] ; 否则 dp[i][j] min(dp[i-1][j] 1, dp[i][j-1] 1 , dp[i-1][j-1] 1 ) ; ; // dp[i-1][j-1] 1 表示修改 。 return dp[word1.size() ][word2.size()] ;
http://www.w-s-a.com/news/649911/

相关文章:

  • 北京做网站设计程序员和网站开发
  • 个人 做自媒体 建网站图片制作成视频的手机软件
  • h5 建站网站 移动端重庆潼南网站建设价格
  • 商企在线营销型网站怎么做时光网站
  • 网站建设方案论文1500竞价托管哪家便宜
  • 使用cdn的网站宣武网站建设
  • 营销型网站怎么建设企业网站Wap在线生成
  • 网站建设服务费应该做到什么科目广州网页制作服务商
  • 网站显示500错误怎么解决方法店面设计模板
  • 网站备案icp文化传媒有限公司
  • 北京企业建站模板微信公众号商城怎么制作
  • 制作网站 公司简介大型做网站的公司
  • 北京网站开发建设南昌网站小程序开发
  • 网站如何做ip签名图片宁波互联网
  • 中山小榄网站建设长沙网络营销品牌排名
  • 推广优化厂商联系方式网站推广教程优化整站
  • 为外国企业做中文网站建设网站建设单位哪家好
  • 生物制药公司网站模板有没有专业做steam创客的网站
  • 福田做棋牌网站建设找哪家效益快弄一个微信小程序多少钱
  • 成都哪家做网站建设比较好做推广赚钱的网站
  • 常州专门做网站的公司有哪些网页模板下载网站10
  • linx服务器怎么做网站做长页网站
  • 汕头网站建设sagevis服装设计公司有什么职位
  • 网站流量分析报告医院网站制作公司
  • 仿58网站怎么做邯郸网站设计多少钱
  • 广州网站制作开发wordpress中文固定连接
  • 成都网站建设公司盈利吗专门做二手手机的网站有哪些
  • 手机网站设计需要学什么wordpress读法
  • WordPress pajx天津短视频seo
  • 检察院门户网站建设情况总结深圳网站制作长沙