2013-02-10 7 views
1

Ok так что у меня есть слово: BEERИзвлечение рисунка из строки?

Я хочу создать строку, как это: - E E -

видеть, что все, кроме E буквы были заменены на - и пространство были введены между каждым персонаж. Я могу сделать последнее довольно легко, а не первое.

Кроме того, может быть полезно, чтобы персонаж, который не был заглушен, неизвестен. Я должен принять это решение на основе символов Set.

Так что, если у меня есть Set слова: BEER HERE HAIR, и я хочу E не быть заглушены, мой вывод должен быть таким: - E E --E - E- - - -.

Как мне это сделать?

ответ

1

Итерации над символами в строке.

Для каждого символа, если он находится в наборе setOfCharactersToNotBlankOut, напечатайте символ. Если это не так, напечатайте -.

+0

Проблема в том, что мой алгоритм будет работать в 'O (N^2) 'время, так как это в другом цикле. Как я могу заставить его работать быстрее? – user2027425

+0

Итак? O (n^2) при n <100 так же быстро, как мгновение глаз. Будет ли ваша программа действительно работать заметно медленной? Вы измерили? – Patashu

+0

У меня есть слова 176k, которые мне нужно запустить. :( – user2027425

1

попробовать

String s = "BEER HERE HAIR"; 
s = s.replaceAll("[^E ]", " - "); 
System.out.println(s); 

отпечатки

- EE - - E - E - - - - 
Смежные вопросы