2016-12-02 118 views
0

編寫一個函數來查找字符串列表的最長前綴。例如,找到最長的字符串前綴

[ 'ABC', 'ABCDE', 'abxyz'] => 'AB'

所以它是一個ArrayList的,我們發現在字符串列表中的最長前綴。

讓我們試試Java。

請,沒有完整的解決方案

public string prefix (Arraylist<String> lst){ 

Arraylist<char[]> charLst = new Arraylist<>; 

for(int i =0; i < lst.size(); i++){ 

    charLst.add(lst.get(i).toCharArray()); 

} 

} 

但我怎麼創建一個CharArray後繼續執行?這已經開始效率低下了,因爲它只是轉換爲CharArray而已,它是O(n)。我只想在方法中使用一些提示/幫助

回答

1

爲什麼要將每個字符串的第i個字符添加到charLst?你需要的只是最長公共前綴的長度,然後你可以根據你得到的長度輸出前綴。