此問題和 反轉字串i 非常類似,但是有以下限制:輸入的字串不包含字首或者字尾空格,然後字串只有以單個空格分隔。 要求不開闢任何其他儲存空間,在原先字串上進行替換。
eg:"the sky is blue" --> "blue is sky the"
解決辦法也是和 i 相似,先總體翻轉一次,然後再翻轉單詞,只是在處理空格時稍有不同。
**如下:
void reversewords(string &s)
reverse(s.begin() + storeindex - (j - i), s.begin() + storeindex);
i = j;
}}複製**
LeetCode 反轉字串II
給定乙個字串和乙個整數 k,你需要對從字串開頭算起的每個 2k 個字元的前k個字元進行反轉。如果剩餘少於 k 個字元,則將剩餘的所有全部反轉。如果有小於 2k 但大於或等於 k 個字元,則反轉前 k 個字元,並將剩餘的字元保持原樣。示例 輸入 s abcdefg k 2 輸出 bacdfeg 要求 ...
541 反轉字串II
給定乙個字串 s 和乙個整數 k,你需要對從字串開頭算起的每隔 2k 個字元的前 k 個字元進行反轉。如果剩餘字元少於 k 個,則將剩餘字元全部反轉。如果剩餘字元小於 2k 但大於或等於 k 個,則反轉前 k 個字元,其餘字元保持原樣。示例 輸入 s abcdefg k 2 輸出 bacdfeg 遍...
541 反轉字串 II
給定乙個字串 s 和乙個整數 k,你需要對從字串開頭算起的每隔 2k 個字元的前 k 個字元進行反轉。如果剩餘字元少於 k 個,則將剩餘字元全部反轉。如果剩餘字元小於 2k 但大於或等於 k 個,則反轉前 k 個字元,其餘字元保持原樣。原題請參考鏈結 方法一 暴力法 class solution d...