给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。
注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。
示例 1:
输入: "Let's take LeetCode contest"
输出: "s'teL ekat edoCteeL tsetnoc"
解答
思路:
1.把句子用" "切割为一个数组;
2.分别操作每一个单词;
3.用StringBuilder来存放每一次反转的单词;
4.根据规则加入" ",最后一个单词的后面没有" ";
5.把StringBuilder转换成字符串就是最终的结果。
publicStringreverseWords(String s)
{//先用“ ”把字符串分成一个数组。String[] split = s.split(" ");
intlen = split.length; StringBuilder sb =newStringBuilder();
//分别反转每一个单词之后,把结果存到StringBuilder中。
for(inti =0; i < len; i++) {for(intj = split[i].length() -1; j >=0; j--)
{ sb.append(split[i].substring(j, j +1)); }
//每一个单词之间用" "来分隔。if(i < len -1) { sb.append(" ");
}
}
returnsb.toString();}
还是疲于交作业这种的赶作业,对于代码只是看的懂,到自己写的时候就差的很远,要自己写一遍,电脑写不了可以拿本子抄一遍,效果都比只看不做来的强
网友评论