9
4. Dot plot
! Écrire la fonction DotPlot et indiquer sa complexité
public static int[][]dotPlot(char[]seq1, char[] seq2)
{
int [][]res=new int[seq1.length][seq2.length];
for(int i=0;i<seq1.length;i++)
for(int j=0; j<seq2.length; j++)
if(seq1[i]==seq2[j])
res[i][j]=1;
else
res[i][j]=0;
return res;
}
public static int[][]dotPlot(char[]seq1, char[] seq2){int [][]
res=new int[seq1.length][seq2.length];for(int
i=0;i<seq1.length;i++)for(int j=0; j<seq2.length; j++)if
(seq1[i]==seq2[j])res[i][j]=1;elseres[i][j]=0; return
res;}
Importance de la représentation graphique
pour percevoir l information
10
4. Dot plot : filtrage
! On note seq(a,b) la sous séquence de seq allant de
l’indice a à l indice b
! Res[i][j] contiendra 1 ssi
seq1(i-k,i+k) = seq2(j-k,j+k)
! On peut filtrer moins sauvagement en imposant un
seuil d identité entre les 2 sous-séquences au lieu
d une égalité complète
! Attention aux limites
! Quelle est la complexité de cette variante ?