classSolution:defreverseString(self, s: List[str])->None:"""
Do not return anything, modify s in-place instead.
"""
left =0
right =len(s)-1while left <= right:
left_char = s[left]
right_char = s[right]
s[right]= left_char
s[left]= right_char
left +=1
right -=1
541. 反转字符串 II:
代码思路
classSolution:defreverseStr(self, s:str, k:int)->str:
s_list =list(s)
length =len(s_list)
n =0while n*k <= length:if n %2==0:
left = n*k
if(n+1)*k > length:
right = length -1else:
right=(n+1)*k-1while left <= right:
left_char = s_list[left]
right_char = s_list[right]
s_list[left]= right_char
s_list[right]= left_char
left +=1
right -=1
n +=1else:
n +=1return"".join(s_list)
剑指 Offer 05. 替换空格:
代码思路
classSolution:defreplaceSpace(self, s:str)->str:
s_lis =list(s)for i inrange(len(s_lis)):if s_lis[i]==" ":
s_lis[i]="%20"return"".join(s_lis)
151. 反转字符串中的单词:
代码思路
classSolution:defreverseWords(self, s:str)->str:# s = s.strip()
s_list = s.split(" ")
length =len(s_list)
n =0
flag =0while n <= length -1:if s_list[flag]=="":del s_list[flag]
flag -=1
flag +=1
n +=1
left =0
right =len(s_list)-1while left <= right:
left_str = s_list[left]
right_str = s_list[right]
s_list[left]= right_str
s_list[right]= left_str
left +=1
right -=1return" ".join(s_list)