题解 | #牛群消息传递#
牛群消息传递
https://www.nowcoder.com/practice/28df6c40150a40b49c9c4d4ae1dd675d
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。
我们可以在原字符串后加入一个空格字符,然后判断当前不是空格后一个是空格作为一个字符串结束的标志,最后我们将所有字符串位置逆转
查看14道真题和解析