繁体   English   中英

最长公共子序列C(Python脚本说明)

[英]Longest Common Subsequence C (Python Script explanation)

最近几天,我一直在使用动态编程开发C语言中的最长公共子序列程序。 虽然,我遇到内存问题,因为我正在尝试处理大量数据(这是很多),这会导致内存溢出。

幸运的是,我发现了一种线性空间复杂度算法,该算法可以有效地避免内存溢出,但是它是用Python编写的。 有人可以帮我了解下图的情况吗?

LCS距离的Python脚本

更具体地说,我不明白它在“ curr = list(itertools.repeat(0,1 + ny))”行中发生了什么

对于其余的我可以猜测。

提前致谢!

它是这样工作的:

  1. 通过代码my=len(ys)读取ys的长度,在“黑猩猩”示例中它将为10

  2. 您的itertools.repeat将为list(itertools.repeat(1,11))将为您提供11次的列表

    [1,1,1,1,1,1,1,1,1,1,1]

正如您所说的休息,您已经知道了。

有关重复的更多信息,请查看以下内容:

https://docs.python.org/2/library/itertools.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM