最长公共子序列-python
来源:互联网 发布:种植牙 植骨 知乎 编辑:程序博客网 时间:2024/05/25 16:37
class SeqMax: def __init__(self, str1, str2): self.resMatrix = [] self.str1 = str1 self.str2 = str2 self.str1len = len(str1) self.str2len = len(str2) self._createMatrix() def printMatrix(self): print('=' * 20) for x in range(self.str1len+1): for y in range(self.str2len+1): print('%s ' % self.resMatrix[x][y], end = '') print() def computeMaxLen(self): for x in range(1, self.str1len+1): for y in range(1, self.str2len+1): if self.str1[x-1] == self.str2[y-1]: self.resMatrix[x][y] = self.resMatrix[x-1][y-1] + 1 else: self.resMatrix[x][y] = max(self.resMatrix[x-1][y], self.resMatrix[x][y-1]) return self.resMatrix[self.str1len][self.str2len] def _createMatrix(self): for x in range(self.str1len+1): l = [] for y in range(self.str2len+1): l.append(0) self.resMatrix.append(l)if __name__ == '__main__': str1 = 'lanx' str2 = 'asdfla333nx3' seqmax = SeqMax(str1, str2) seqmax.printMatrix() res = seqmax.computeMaxLen() print(res) seqmax.printMatrix()
0 0
- 最长公共子序列-python
- 最长公共子序列 python
- python -- 最长公共子序列
- 最长公共子序列python实现
- 最长公共子序列及Python实现
- 最长公共子序列(LCS)问题 python
- Python 实现最长公共子序列LCS
- 最长公共子序列(Python)
- 最长公共子序列问题Python实现
- 最长递增子列、最长公共子序列 python实现
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列...
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- Android WebView的基本用法
- elasticsearch5.2.1 环境搭建
- css元素背景图片自适应屏幕大小
- rabbitMQ说明文档地址
- Git 常用命令大全
- 最长公共子序列-python
- 数据库系统分层优化
- 串口通信读写
- Unity入门笔记-常用方法记录
- JDBC编程
- Android Studio新建项目推送到码云上
- [实践OK]git删除远程文件夹或文件的方法
- springboot 静态资源配置
- 371. Sum of Two Integers