import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param s string字符串 * @return string字符串 */ public static String reverseWords (String s) { // write code here LinkedList<String> linkedList = new LinkedList<>(); StringBuffer stringBuffer = new StringBuffer(); stringBuffer.append(s + " "); StringBuilder string = new StringBuilder(); for (int i = 0; i < stringBuffer.length(); i++) { if (stringBuffer.charAt(i) != ' ' && stringBuffer.charAt(i + 1) == ' ') { string.append(stringBuffer.charAt(i)); linkedList.add(string.toString()); string = new StringBuilder(); } else if (stringBuffer.charAt(i) != ' ' && stringBuffer.charAt(i + 1) != ' ') { string.append(stringBuffer.charAt(i)); } } StringBuffer result = new StringBuffer(); for (int i = linkedList.size() - 1; i >= 0; i--) { result.append(linkedList.get(i) + " "); } return result.substring(0, result.length() - 1); } }
本题考察字符串常用函数的应用,所用编程语言是java。
我们可以在原字符串后加入一个空格字符,然后判断当前不是空格后一个是空格作为一个字符串结束的标志,最后我们将所有字符串位置逆转