这个问题最近在面试中被问到,谁能告诉我解决方案,因为我无法调试它
public static void main(String[] args)
{
i could not able to do it
}
input: hello bro how are you
output: uoy are woh bro olleh
input: fire exit
output: tixe fire
首先需要反转整个字符串,然后需要反转结果字符串
一种直接的方法是在空间上拆分输入字符串,然后向后迭代,反转每个其他单独的单词,从反转第一个单词开始。
String input = "hello bro how are you";
String[] parts = input.split(" ");
StringBuilder sb = new StringBuilder();
for (int i=0; i < parts.length; ++i) {
StringBuilder rev = new StringBuilder(parts[parts.length - i - 1]);
if (i > 0) sb.append(" ");
sb.append(i % 2 == 0 ? rev.reverse() : rev);
}
System.out.println(sb.toString());
uoy are woh bro olleh
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句