給定乙個字串 s 和乙個整數 k,你需要對從字串開頭算起的每隔 2k 個字元的前 k 個字元進行反轉。
如果剩餘字元少於 k 個,則將剩餘字元全部反轉。
如果剩餘字元小於 2k 但大於或等於 k 個,則反轉前 k 個字元,其餘字元保持原樣。
示例:輸入: s = 「abcdefg」, k = 2
輸出: 「bacdfeg」
# 遍歷所給字串,依次判斷是否需要反轉
class
solution
:def
reversestr
(self, s:
str, k:
int)
->
str:
sign =
true
# 需要反轉則為true
res =
""# 最終結果
for i in
range(0
,len
(s), k)
: res += s[i:i + k][:
:-1]
if sign else s[i:i + k]
sign =
not sign
return res
541 反轉字串 II
給定乙個字串 s 和乙個整數 k,你需要對從字串開頭算起的每隔 2k 個字元的前 k 個字元進行反轉。如果剩餘字元少於 k 個,則將剩餘字元全部反轉。如果剩餘字元小於 2k 但大於或等於 k 個,則反轉前 k 個字元,其餘字元保持原樣。原題請參考鏈結 方法一 暴力法 class solution d...
leetcode 541 反轉字串 II
題目描述 給定乙個字串和乙個整數 k,你需要對從字串開頭算起的每個 2k 個字元的前k個字元進行反轉。如果剩餘少於 k 個字元,則將剩餘的所有全部反轉。如果有小於 2k 但大於或等於 k 個字元,則反轉前 k 個字元,並將剩餘的字元保持原樣。示例 輸入 s abcdefg k 2輸出 bacdfeg...
LeetCode 541 反轉字串 II
給定乙個字串和乙個整數 k,你需要對從字串開頭算起的每個 2k 個字元的前k個字元進行反轉。如果剩餘少於 k 個字元,則將剩餘的所有全部反轉。如果有小於 2k 但大於或等於 k 個字元,則反轉前 k 個字元,並將剩餘的字元保持原樣。step1 把字串長度 對2k取餘剩下的數字,以及 2k得到的結果儲...