题目描述
牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?
算法解析,通过空格判断单词,然后倒序连接即可。
代码如下:
public String ReverseSentence(String str) { if (str == null || str.length() < 1){ return ""; } int pos = str.length(); StringBuilder builder = new StringBuilder(); for (int i = str.length() - 1; i >= 0 ; i--) { if (str.charAt(i) == ' '){ builder.append(str.substring(i + 1, pos)); builder.append(" "); pos = i; } } builder.append(str.substring(0, pos)); return builder.toString(); }新闻热点
疑难解答