E4c – Le problème de l’alignement de séquences

Question 4 – Implémenter en Python le programme permettant de calculer ces scores quelque soient les séquences à aligner.

# n1 (int) : nombre de caractères de la séquence 1
# n2 (int) : nombre de caractères de la séquence 2

for ligne in range(1, n1 + 1):
    for colonne in range(1, n2 + 1):

        score_max = max(-1 + score[ligne - 1][colonne], -1 + score[ligne][colonne - 1])

        if seq1[ligne - 1] == seq2[colonne - 1]:
            score[ligne][colonne] = max(score_max, 1 + score[ligne - 1][colonne - 1])

        else:
            score[ligne][colonne] = max(score_max, -1 + score[ligne - 1][colonne - 1])

return score[n1][n2]