题目描述
输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student. ",则输出"student. a am I"。
思路
1.首先将原字符串根据“ ”进行分割,将分割后的数组倒序相加,中间用“ ”分割。
2.最后将最终的字符串尾部多余的“ ”去掉。
Java代码实现
class Solution {
public String reverseWords(String s) {
String[] words = s.split(" ");
String res = "";
for (int i = words.length-1; i >= 0; i--) {
if("".equals(words[i])){
continue;
}
res = res + words[i] + " ";
}
return res.trim();
}
}
Golang代码实现
func reverseWords(s string) string {
words := strings.Split(s," ")
res := ""
for i:=len(words)-1; i>=0; i-- {
if words[i] == ""{
continue
}
res = res + words[i] + " "
}
res = strings.Trim(res," ")
return res
}
有疑问加站长微信联系(非本文作者)