仅提供个人的一种解题思路,未必是最优,仅供各位参考!
/**
*
* <p>
* ClassName SolutionReverseWordsInAString
* </p>
* <p>
* Description Given an input string, reverse the string word by word.
*
* For example, Given s = "the sky is blue", return "blue is sky the".
* </p>
*
* @author wangxu wangx89@126.com
* <p>
* Date 2014-9-11 下午01:55:53
* </p>
* @version V1.0
*
*/
public class SolutionReverseWordsInAString {
public static String reverseWords(String s) {
if ("".equals(s.trim())) {
return "";
}
String str[] = s.trim().split(" ");
String result = "";
int length = str.length - 1;
for (int i = 0; i <= length / 2; i++) {
if (!"".equals(str[i])) {
String temp = str[i];
str[i] = str[length - i];
str[length - i] = temp;
}
}
for (int i = 0; i <= length; i++) {
if (!"".equals(str[i])) {
if (i == length) {
result += str[i];
} else {
result += str[i] + " ";
}
}
}
return result;
}
public static void main(String[] args) {
System.out.println(reverseWords(" a b "));
}
}
本文介绍了一种用于将输入字符串中的单词进行反转的算法实现。通过示例演示了如何将字符串“theskyisblue”处理成“blueisskythe”。代码首先去除字符串两端空白并按空格拆分单词,然后对单词数组进行反转操作,最后整合为新的字符串。
473

被折叠的 条评论
为什么被折叠?



