gpt4 book ai didi

java - 全局序列比对中的回溯

转载 作者:行者123 更新时间:2023-12-02 09:56:51 25 4
gpt4 key购买 nike

我面临着追溯全局序列比对的问题。我的第一个序列是 ATTGCGCGCAT,第二个序列是 ATGCTTAACCA。回溯结果应该是A T T G C _ _ _ G C G 猫A _ T G C T T A A C _ CA _但我使用的代码无法输出该结果。

我曾尝试浏览google以供引用,但很少有关于用Java编写的traceback的引用。

private static void traceback(String seqOne, String seqTwo,int[][]matrix) {


StringBuilder s1 = new StringBuilder(), s2 = new StringBuilder();

for ( int i = seqOne.length(), j = seqTwo.length(); i > 0 && j > 0; ) {
if (i > 0 && j > 0 && (matrix[i][j] == matrix[i - 1][j - 1]) ) {
s1.append(seqOne.charAt(--i));
s2.append(seqTwo.charAt(--j));
} else if ( i > 0 && (matrix[i][j] == matrix[i - 1][j] + 1) ) {
s1.append(seqOne.charAt(--i));
s2.append("-");
} else if ( j > 0 && (matrix[i][j] == matrix[i][j - 1] + 1) ) {
s2.append(seqTwo.charAt(--j));
s1.append("-");
}
}

System.out.println();
System.out.println(s1.reverse().toString());
System.out.println(s2.reverse().toString());

}

最佳答案

这是我使用在线刺激器演示的答案

traceback

关于java - 全局序列比对中的回溯,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55937099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com