Leetcode 557.反转字符串中的单词 III
- 反转字符串中的单词 III
给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。
示例:
输入:“Let’s take LeetCode contest”
输出:“s’teL ekat edoCteeL tsetnoc”
提示:
在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。
class Solution {
public String reverseWords(String s) {
int len = s.length();
char[] ch = s.toCharArray();
int start = 0,end = 0;
while(end <= len - 1){
if(ch[end] == ' '||end == len - 1){
int k = 0;
if(end != len - 1) k = end - 1;
else
k = end;
for(int i = start,j = k;i <= j;i++,j--){
char temp = ch[i];
ch[i] = ch[j];
ch[j] = temp;
}
end++;
start = end;
}else if(ch[end] != ' '){
end++;
}
}
s = String.valueOf(ch);
return s;
}
}
执行结果:
通过
显示详情
执行用时:4 ms, 在所有 Java 提交中击败了94.30% 的用户
内存消耗:38.6 MB, 在所有 Java 提交中击败了99.78% 的用户