-4
我能夠測試下面給出的示例輸入數據的代碼,並且能夠成功驗證。Rosalind模式匹配Java不接受
http://rosalind.info/problems/1c/
但不知何故,爲我下載任何數據集,答案是不被該網站所接受。我不確定如果我錯過了一些東西。
我正在使用樸素的indexOf函數。不知道是否真的需要KMP,除非輸入字符串非常大。
import java.util.*;
import java.lang.*;
import java.io.*;
class PatternMatch
{
public static StringBuilder out = new StringBuilder();
public static void main (String[] args) throws java.lang.Exception
{
try{
System.out.println(match("GATATATGCATATACTT","ATAT",0));
}catch(Throwable e){
System.out.println("excepton "+e.getMessage());
}
}
static String match(String text,String pat,int start){
if(start+pat.length()-1<text.length()){
int matchPos = text.indexOf(pat,start);
if(matchPos>0){
out.append(matchPos+" ");
match(text,pat,matchPos+1);
} else {
return out.toString();
}
} else {
return out.toString();
}
return out.toString();
}
}
我看到反對票,但沒有理由呢?這不是一個正確的問題嗎? – crackerplace
這個問題似乎是無關緊要的,因爲它是關於一個私人網站以及它的功能。 –
@ErickRobertson好人,有人關心解釋。如果那是在我馬上關閉它之前完成的。我沒有看到任何點只是投票下來的問題沒有提示什麼是錯的提示。我的問題仍然有一個關於效率的觀點。 – crackerplace