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

自做网站需要多少钱wordpress支持多少字

自做网站需要多少钱,wordpress支持多少字,备案号如何绑定多个网站,wordpress get user2901. 最长相邻不相等子序列 II 题目分析 题目要求从 words 数组中选择一个最长的子序列,满足以下条件: ​相邻元素的 groups 值不同;​相邻 words 字符串长度相等且汉明距离为 1。 子序列需保持原数组顺序,返回对应的字符串数…

2901. 最长相邻不相等子序列 II

题目分析

题目要求从 words 数组中选择一个最长的子序列,满足以下条件:

  1. 相邻元素的 groups 值不同
  2. 相邻 words 字符串长度相等且汉明距离为 1

子序列需保持原数组顺序,返回对应的字符串数组。需结合动态规划(DP)和路径记录解决

解题思路

1. 动态规划状态定义

定义 dp[i] 表示以 words[i] 结尾的最长合法子序列长度。
定义 next[i] 记录子序列中 words[i] 的下一个元素下标,用于最终路径重建

2. 状态转移
  • 从后往前遍历​:
    对每个下标 i,检查其后所有 j > i 的元素:
    • 满足下面3个条件
    • 1、若 groups[i] != groups[j]
    • 2、且 words[i] 与 words[j] 长度相等;
    • 3、且两者的汉明距离为 1;
    • 则更新 dp[i] = max(dp[i], dp[j] + 1),并记录 next[i] = j
3. 汉明距离计算
  • 逐字符比较​:
    若两字符串长度相同,遍历每个位置统计不同字符数,严格为 1 时合法
4. 路径重建
  • 反向回溯​:
    找到 dp 数组中最大值对应的起点 maxStart,沿 next 数组依次拼接子序列

代码实现

class Solution:def getWordsInLongestSubsequence(self, words: List[str], groups: List[int]) -> List[str]:def check(s:str, t:str) -> bool:if len(s) != len(t):return Falsediff = 0for a,b in zip(s,t):if a != b:diff += 1if diff > 1:return Falsereturn diff == 1n = len(words)# 动态规划数组,dp[i]表示以 words[i] 结尾的最长子序列长度;dp = [0]*n# 记录路径的数组,next_index[i] 表示在最长子序列中 words[i] 的下一个元素的下标next_index = [0]*n# 记录当前最长子序列的最后一个元素的下标,初始设为最后一个元素(n-1)max_i = n-1# 从倒数第二个元素向前遍历# 确保在处理 i 时,所有 j > i 的 dp[j] 都已经被计算过了for i in range(n-1, -1, -1):# 遍历i之后的所有元素,对于每个 j,检查它是否能接在 i 后面形成合法子序列for j in range(i+1, n):if dp[j] >dp[i] and groups[i] != groups[j] and check(words[i], words[j]):# 状态转移# 如果从 j 转移过来的子序列比当前记录的长度更长# 更新以 i 结尾的子序列的最大长度,+1 是因为我们把 i 这个元素也加入了子序列dp[i] = dp[j]# 记录路径,表示在最优解中 i 后面接的是 jnext_index[i] = j dp[i] += 1# 更新最长子序列起点if dp[i] > dp[max_i]:max_i = ii = max_iresult = ['']*dp[i]for k in range(dp[i]):result[k] = words[i]i = next_index[i]return result

复杂度分析

  • 时间复杂度​:
    • 动态规划部分为 O(n²),汉明距离检查为 O(m)(m 为字符串长度),总时间复杂度 O(n²m)
  • 空间复杂度​:
    • O(n)(存储 dp 和 next 数组)

关键点总结

  1. 动态规划方向​:
    从后向前遍历,保证每个状态能继承后续最优解
  2. 条件检查优化​:
    提前过滤长度不同的字符串,减少无效计算
  3. 路径记录​:
    通过 next 数组回溯,避免二次遍历

通过上述方法,可以高效解决最长相邻不相等子序列问题,满足题目要求。


文章转载自:

http://u2eOyng8.xywfz.cn
http://8ylYACsK.xywfz.cn
http://4I4okufA.xywfz.cn
http://L4t6qO3s.xywfz.cn
http://TZyrinbO.xywfz.cn
http://4gaIZprp.xywfz.cn
http://hp9Kqonh.xywfz.cn
http://s3nZexdn.xywfz.cn
http://fv9yabOP.xywfz.cn
http://8tiCTq1t.xywfz.cn
http://NQkVWYUR.xywfz.cn
http://kkYZlPCz.xywfz.cn
http://dXqvBMfk.xywfz.cn
http://tW7l2Aq8.xywfz.cn
http://V4Jt2zEX.xywfz.cn
http://o8Vmtbsc.xywfz.cn
http://9akPF1v4.xywfz.cn
http://Gvcx4qO3.xywfz.cn
http://9zVagZkw.xywfz.cn
http://laK95APS.xywfz.cn
http://8zFKAqkq.xywfz.cn
http://Opi1mlv8.xywfz.cn
http://xyKFhSV5.xywfz.cn
http://reKJCv2W.xywfz.cn
http://t6pi43A6.xywfz.cn
http://GJI3CwjC.xywfz.cn
http://L0feGXLy.xywfz.cn
http://jv0RmZ67.xywfz.cn
http://H766ACst.xywfz.cn
http://Oc06hMcv.xywfz.cn
http://www.dtcms.com/wzjs/724308.html

相关文章:

  • 智慧团建网站登录密码22虚拟主机怎么样
  • 自动优化网站软件没有了软件开发项目管理工具
  • 网站权重低沧州房产信息网
  • 网站的建设方面乐器产品主要在什么网站做推广
  • 网站站长是什么wordpress首页添加图片不显示图片
  • 网站备案icp汕头网站建设模板制作
  • 江津哪里找做网站的西安网站建设 企业建站
  • 网站开发建设技术规范书wap手机网站静态模板
  • 网站功能性介绍做高端网站建设
  • 宁夏建设厅网站领导怎么制作一个网站及小程序
  • 重庆市建设工程信息网站诚信分网站正在建设中的图片
  • 湖北网站建设重庆市建设工程交易中心网站
  • 南京做电商网站的公司河间网站网站建设
  • 如何访问自己做的网站上海网络营销策划
  • 网站建设需求分析调研调查表惠州百度推广优化排名
  • 网站维护的主要工作wordpress reeoo 主题
  • 大气绿色网站模板软件定制为什么不给源码
  • 网站需要第三方登录怎么做如何建设电影会员网站
  • 做食物外网视频网站led网站制作
  • 如何建立一个网站卖货守游网络推广平台登陆
  • 装修网站建设网做网站优化期间能收到网站吗
  • 做网站设计公司微信小程序开发工具手机版
  • 企业网站产品内页优化以家乡为主题做网站
  • 类似稿定设计的网站清远网站建设
  • 邯郸做移动网站多少钱西安装修公司排名
  • 政法网站建设有哪些不足wordpress图片上传到
  • 那个公司搭建网站郑州网站建设公司哪家好
  • 有ip地址如何做网站做网站的软件是是什么
  • 做网站的企划书做羞羞的事网站
  • 在线做动漫图片视频在线观看网站网页制作大宝库