class Solution {
public:
string reverseWords(string s) {
int previousWhiteSpace = 0;
for(int i = 0; i <= s.size(); i ++){
if(isspace(s[i]) || i == s.size()){
for(int j = previousWhiteSpace; j < i/2; j++){
char temp = s[j];
s[j] = s[i-1-j];
s[i-1-j] = temp;
}
previousWhiteSpace = i + 1;
}
}
return s;
}
};
嗨。因此,我函数的目标是反转字符串的输入。因此,例如,如果给我“让我们参加LeetCode竞赛”,则我的函数应返回“ s'teL ekat edoCteeL tsetnoc”。但是,目前我的功能仅返回 “参加LeetCode竞赛”。我有一个计数器,我将其表示为previousWhiteSpace,以跟踪似乎适用于第一个单词的每个新单词的开头,而不跟踪其余单词。任何帮助,将不胜感激。
答案 0 :(得分:-1)
您只需将“” 分配给变量 previousWhiteSpace ,而无需增加。因此,您的代码将自动检测空格,直到字符串结尾,并在每个空格之后运行代码。由于已将值分配为0,因此它将仅对第一个单词执行结果,并且它将终止。