2016-12-02 4 views
0

Напишите функцию, чтобы найти самый длинный префикс списка строк. Например,Найти самый длинный префикс String

[ 'ABC', 'ABCDE', 'abxyz'] => 'аb'

Так это Список_массивов и мы находим самый длинный префикс в списке строк.

Давайте попробуем 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? Это уже начинает быть неэффективным, так как это O(n) с преобразованием в CharArray. Я хотел бы просто дать подсказку/помощь в подходе

ответ

1

Почему вы добавляете i-й символ каждой строки в charLst? Вам нужна только длина самого длинного общего префикса, а затем вы можете вывести префикс в зависимости от длины, которую вы получили.

Смежные вопросы