Python 2.7 点图中的LCS算法
我希望有人能帮我,我只是不能让我的程序运行。我试图用python创建一个完整的LCS(最长公共子字符串)矩阵(稍后再查找最长公共子字符串)。我无法把点画在一起。我试图将它附加到我的空矩阵中,但它不起作用。我做错了什么Python 2.7 点图中的LCS算法,python-2.7,Python 2.7,我希望有人能帮我,我只是不能让我的程序运行。我试图用python创建一个完整的LCS(最长公共子字符串)矩阵(稍后再查找最长公共子字符串)。我无法把点画在一起。我试图将它附加到我的空矩阵中,但它不起作用。我做错了什么 def compute_lcs(seq_A, seq_B): longest = 0 DotPlot = [] m = len(seq_A) n = len(seq_B) for row in range(1,m+1): #set up DotPlot
def compute_lcs(seq_A, seq_B):
longest = 0
DotPlot = []
m = len(seq_A)
n = len(seq_B)
for row in range(1,m+1): #set up DotPlot
for col in range(1, n+1):
temp_row = []
if seq_A[row] == seq_B[col]:
if row == 0 or col == 0:
DotPlot[row, col] = 1
temp_row.append(DotPlot[row,col])
else:
DotPlot[row, col] = DotPlot[row-1, col-1] + 1
temp_row.append(DotPlot[row, col])
else:
DotPlot[row, col] = 0
temp_row.append(DotPlot[row, col])
return DotPlot
谢谢大家! 局部变量(
DotPlot
)应该是dot\u plot
。说明什么不起作用。你犯了什么错误。一方面,当它是一个列表时,您试图将其索引为DotPlot[row,col]
。这将给出一个错误。考虑使用Numpy数组。