最长公共子序列实现-python

2024-01-04

我已经按照本中的说明实现了最长公共子序列问题video https://www.youtube.com/watch?v=xnWqLAI3TKs。它只执行第一组代码并生成一个空列表。这个实现有什么问题吗?

def lcs_recursive(xlist,ylist):
    if not xlist or ylist:
        return []
    x,xs,y,ys, = xlist[0],xlist[1:],ylist[0],ylist[1:]
    if x == y:
        return [x] + lcs_recursive(xs,ys)
    else:
        return max(lcs_recursive(xlist,ys),lcs_recursive(xs,ylist),key=len)



s1 = 'abc'
s2 = 'aeb'

print lcs_recursive(s1,s2) 

if not xlist or ylist:将评估为if (not xlist) or (ylist)因此,如果您传递一些 Truthy 的内容(例如非空列表)到ylist它将始终评估为 True。您可能想要:

if not xlist or not ylist:
    return []

或者你可以使用:

if not all([xlist, ylist]):
    return []
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

最长公共子序列实现-python 的相关文章

  • Pandas 将行中的非空值获取到一个单元格中[重复]

    这个问题在这里已经有答案了 给定以下数据框 a pd DataFrame A 1 2 B 4 0 C 1 2 a A B C 0 1 4 1 1 2 0 2 我想创建一个新专栏D包含由列分隔的非空值 每行 像这样 A B C D 0 1 4
  • 带有指针数组的 cython

    我在 python 中有一个 numpy ndarrays 列表 具有不同的长度 并且需要非常快速地访问 python 中的列表 我认为指针数组就可以解决问题 我试过 float type t list of arrays no of ar
  • Python 小数.InvalidOperation 错误

    当我运行这样的东西时 我总是收到此错误 from decimal import getcontext prec 30 b 2 3 Decimal b Error Traceback most recent call last File Te
  • 使用信号时出现 django TransactionManagementError

    我有一个与 django 的用户和 UserInfo 一对一的字段 我想订阅用户模型上的 post save 回调函数 以便我也可以保存 UserInfo receiver post save sender User def saveUse
  • 在 Python 3 中动态导入模块的问题

    我遇到的情况是 在我的 Python 3 项目中 在运行时必须包含某些模块 我在用着importlib import module为了这 第二次更新 我确实找到了一种方法来做一些接近我想要的事情 一些额外的代码可能会使我的一些链接稍微偏离一
  • 通过鼻子测试检查某个函数是否发出警告

    我正在使用编写单元测试nose http somethingaboutorange com mrl projects nose 0 11 2 我想检查函数是否引发警告 该函数使用warnings warn 这是很容易就能做到的事情吗 def
  • Python 使用 M2Crypto 通过 S/MIME 对消息进行签名

    我现在花了几个小时 但找不到我的错误 我想要一个简单的例程来创建 S MIME 签名消息 稍后可以与 smtplib 一起使用 这是我到目前为止所拥有的 usr bin python2 7 coding utf 8 from future
  • 绘制“plot”而不是“scatter”时,图例选择会中断

    再会 这个问题是后续问题为什么图例选取仅适用于 ax twinx 而不适用于 ax https stackoverflow com q 60167378 9282844 下面提供的最小代码分别绘制了两条曲线ax1 and ax2 ax1 t
  • 使用字母而不是数字进行顺序计数[重复]

    这个问题在这里已经有答案了 我需要一种方法 将字符串 递增 到 z 然后将 aa 递增到 az 然后将 ba 递增到 bz 依此类推 就像 Excel 工作表中的列一样 我将向该方法提供前一个字符串 它应该增加到下一个字母 PSEUDO C
  • 在 keras 中使用自定义张量流操作

    我在张量流中有一个脚本 其中包含自定义张量流操作 我想将代码移植到 keras 但我不确定如何在 keras 代码中调用自定义操作 我想在 keras 中使用tensorflow 所以到目前为止我发现的教程描述了与我想要的相反的内容 htt
  • Pandas Pivot_Table :非数字值的行计算百分比

    这是我在数据框 df 中的数据 Document Name Time SPS2315511 A 1 HOUR SPS2315512 B 1 2 HOUR SPS2315513 C 2 3 HOUR SPS2315514 C 1 HOUR S
  • Pyinstaller --onefile 警告文件已存在但不应存在

    跑步时Pyinstaller onefile 并开始得到结果 exe 会出现多个弹出窗口 并显示以下警告 WARNING file already exists but should not C Users myuser AppData L
  • 向 Python 2.6 添加 SSL 支持

    我尝试使用sslPython 2 6 中的模块 但我被告知它不可用 安装OpenSSL后 我重新编译2 6 但问题仍然存在 有什么建议么 您安装了 OpenSSL 开发库吗 我必须安装openssl devel例如 在 CentOS 上 在
  • Floyd-Warshall 算法:获取最短路径

    假设一个图由一个表示n x n维数邻接矩阵 我知道如何获得所有对的最短路径矩阵 但我想知道有没有办法追踪所有最短路径 Blow是python代码实现 v len graph for k in range 0 v for i in range
  • 管理文件字段当前 url 不正确

    在 Django 管理中 只要有 FileField 编辑页面上就会有一个 当前 框 其中包含指向当前文件的超链接 但是 此链接会附加到当前页面 url 因此会导致 404 因为不存在这样的页面 例如 http 127 0 0 1 8000
  • Python 垃圾收集有时在 Jupyter Notebook 中不起作用

    我的一些 Jupyter 笔记本经常出现 RAM 不足的情况 而且我似乎无法释放不再需要的内存 这是一个例子 import gc thing Thing result thing do something thing None gc col
  • 从 csv 中读取 pandas 数据帧,以非固定标头开始

    我有许多数据文件是由我的实验室中使用的一些相当黑客的脚本生成的 该脚本非常有趣 因为它在标头之前附加的行数因文件而异 尽管它们具有相同的格式并具有相同的标头 我正在编写一个批处理来将所有这些文件处理为数据帧 如果我不知道位置 如何让 pan
  • 从 Python 中编译的正则表达式中提取命名组正则表达式模式

    我有一个 Python 正则表达式 其中包含多个命名组 但是 如果先前的组已匹配 则可能会错过与一组匹配的模式 因为似乎不允许重叠 举个例子 import re myText sgasgAAAaoasgosaegnsBBBausgisego
  • 从 C 线程调用 Python 代码

    我对从 C 或 C 线程调用 Python 代码时如何确保线程安全感到非常困惑 The Python 文档 http docs python org c api init html non python created threads似乎是
  • 在 Tensorflow 2.0 中的简单 LSTM 层之上添加 Attention

    我有一个由一个 LSTM 和两个 Dense 层组成的简单网络 如下所示 model tf keras Sequential model add layers LSTM 20 input shape train X shape 1 trai

随机推荐

  • Debugdiag 显示“Microsoft VC 运行时堆”使用超过 1GB

    您好 我的 WPF 应用程序存在泄漏 我正在尝试使用内存转储文件来查找问题所在 使用 WinDbg 和 SOS 我找不到任何可疑的东西 然后我尝试了 DebugDiag 我得到了Microsoft VC 运行时堆 私有 有 1 42 GB
  • Dart DateTime.parse timeZoneOffset 始终为 0

    DateTime parse 创建的 DateTime 似乎总是为 timeZoneOffset 返回 0 我在非 UTC 时区中创建了一个 ISO8601 字符串 https timestampgenerator com 16100103
  • 如何使 say 命令回显脚本中的变量值?

    我使用的是 Mac 有时我会使用say命令位于我的脚本末尾 如下所示 system say Finished successfully 但如果我尝试插入一个变量 system say my variable 它不起作用 它仅回显变量名称 我
  • 使用 dllexport 从 DLL 导出函数

    我想要一个从 C Windows DLL 导出函数的简单示例 我想看看标题 cpp文件 以及 def文件 如果绝对需要 我希望导出的名称是未装饰的 我想使用最标准的调用约定 stdcall 我想要使 用 declspec dllexport
  • 如何通过单击按钮从“关于”返回到上一个活动?

    我试图通过单击按钮从 关于 对话框返回到主要活动 public class AboutActivity extends Activity implements OnClickListener Override protected void
  • 单个 MemoryCache 实例与多个 MemoryCache 实例

    MemoryCache 默认情况下带有默认缓存 并且可以创建其他命名缓存 似乎在不同实例中隔离不同进程的结果的缓存可能有优势 例如 针对索引的查询结果可以缓存在 IndexQueryResult 缓存中 而数据库查询的结果可以缓存在 Dat
  • 更改滑动选项卡布局中的颜色指示器

    我想问一下SlidingTablayout中的选项卡指示器的颜色是否可以更改 我必须使用developer android com 上的SlidingTabsColors 吗 我只想更改另一种颜色而不是默认的蓝色 我认为 请指教 谢谢 只是
  • SwiftUI 坐标空间

    有谁知道 SwiftUI 是如何在坐标空间上渲染的 看起来框架的原点现在不在0 0在左上角 例如添加一个Text使用修饰符会将标签偏移到视图之外 var body some View Text my long enough string p
  • 带有 WMS 和自定义投影的传单地图

    我已经使用 WMS 服务中的 Leaflet 和图块实现了地图 他们提供了一系列预测 其中一个可在标准传单 EPSG 4326 中使用 然而 地图看起来有点扭曲 我认为其他投影之一会更好 地图供应商使用 EPSG 32624 但我似乎无法获
  • 我如何使用 keras 创建 3d 输入/3d 输出卷积模型?

    我有一个小问题无法解决 我想使用完全连接的 MLP 来实现 CNN 模型到我的蛋白质数据库 该数据库有 2589 个蛋白质 每个蛋白质有 1287 行和 69 列作为输入 1287 行和 8 列作为输出 实际上有 1287x1 输出 但我对
  • Jacoco 和 Sonar 代码覆盖率?

    Using JaCoCo 0 5 3 Maven2 声纳 2 14 声纳 maven 插件 1 8 S artGWT 3 0 目前正在尝试 在 Sonar 上获取我的 Selenium 单元测试的代码覆盖率 问题 尽管传感器正确启动 代码覆
  • 使用 pyinstaller 制作的 exe 文件被 Windows Defender 报告为病毒威胁

    我正在尝试使用 pyinstaller 为学校项目创建一个 exe 但是 Windows Defender 似乎报告病毒威胁并阻止该文件 我想将此 exe 发送给其他人 但除非我修复此问题 否则我无法做到这一点 所以这些是我的疑问 为什么e
  • 用PHP替换JAVA进行PKCS5加密

    我的任务是用运行 PHP 的系统替换旧的 Java 系统 我在用 PHP 代码替换 java 加密方面遇到了一些困难 cipherAlgorythm PBEWithMD5AndDES cipherTransformation PBEWith
  • R 错误“加载命名空间‘timetk’时未找到对象‘required_pkgs’”

    我在 macOS 11 1 上使用 R 4 0 3 和 RStudio 1 2 5033 我已经使用成功安装了该软件包install packages timetk 当尝试加载包时library timetk 我收到以下错误 错误 time
  • 禁用有关程序尝试发送电子邮件的警告

    我使用 Outlook 2010 和 Access VBA 发送电子邮件 我收到来自 Microsoft Outlook 的关于某个程序试图发送电子邮件的警告 我被迫按下允许 我有 VBA 参考中的 Microsoft Outlook 对象
  • while 循环会在一段时间后停止执行吗? [复制]

    这个问题在这里已经有答案了 所以我目前正在尝试多线程 因为我对 Java 还很陌生 现在 我有多个线程 它们都影响同一个长变量 然而 似乎在除了检查 if 语句之外不做任何事情之后 while 循环就停止执行 如 它无限循环 如果我只是在
  • WCF 中 IIS 下的一个虚拟目录中是否可以有多个 .svc 文件?

    WCF 中 IIS 下的一个虚拟目录中是否可以有多个 svc 文件 如果是这样怎么办 您需要有两份服务合同 并且web config部分您需要注册这两项服务
  • 非id字段的环回关系

    我想指定 2 个 mssql 表之间的关系 付款类别和付款 paymentcategory id 连接到 payout category 列 在 payout json 模型中 我指定为foreignKey id relations pay
  • 跟踪像素是否需要具有 alt 属性才能实现可访问性(WCAG 2.0)?

    我们正在运行一个网站并拥有第三方跟踪像素 但我们正在接收alt在我们的网站上进行 webaim WCAG 2 0 扫描时出现属性错误 我不确定在这种情况下跟踪像素是否确实需要仍然有空白alt属性或者某些屏幕阅读器仍然会读取src alt 在
  • 最长公共子序列实现-python

    我已经按照本中的说明实现了最长公共子序列问题video https www youtube com watch v xnWqLAI3TKs 它只执行第一组代码并生成一个空列表 这个实现有什么问题吗 def lcs recursive xli