我想用常量空間反轉字符串中的單詞。問題是這些單詞不能包含連續的空格。我想將單詞之間的所有連續空格縮減爲一個空格,並忽略前導空格和尾部空格。我能夠實現字的逆轉,但我努力實現刪除單詞與前後空白之間的連續空格。有人能幫我嗎?char [] /句子的反向詞
這是我到目前爲止有:
public char[] reverseWords(char[] s) {
if (s == null)
return null;
int right = 0;
s = reverseString(s, 0, s.length - 1);// get the reversed sentence
//System.out.println(s);
for (int left = 0; left < s.length; left++) {
if (s[left] != ' ') {// for first word
for (right = left; right < s.length && s[right] != ' '; right++)
; // get end of word
s = reverseString(s, left, right - 1);
left =(right - 1);// move left index to end of
// word
// s[left++] = ' ';
}
}
return s;
}
public char[] reverseString(char[] strChars, int start, int end) {
if (strChars == null)
return null;
while (start < end) {
char temp = strChars[start];
strChars[start] = strChars[end];
strChars[end] = temp;
start++;
end--;
}
return strChars;
}
是的,你會怎麼做整個句子的字符數組? – user2441441
對。我以爲你的問題說「絃樂」。我的錯。 –
你可以做'.replace(「」,「」)'? – Aarowaim