title: LEETCODE DAY8
date: 2024-02-27 22:16:53
tags:
T1
class Solution:
def reverseString(self, s: List[str]) -> None:
"""
Do not return anything, modify s in-place instead.
"""
left=0
right=len(s)-1
while left <= right:
temp=s[right]
s[right]=s[left]
s[left]=temp
left+=1
right-=1
python技巧:在列表中交换时有更简洁的方式
s[left],s[right]=s[right],s[left]
T2
python语法:字符串s翻转
s[::-1]
如需对s的部分做反转可以用:s[p:q][::-1]
class Solution:
def reverseStr(self, s: str, k: int) -> str:
p=0
while p<len(s):
p1=p+k
s=s[:p]+s[p:p1][::-1]+s[p1:len(s)]
p=p+2*k
return s
T3
str1=input()
ans=""
for s in str1:
if ord("0")<=ord(s)<=ord("9"):
ans=ans+'number'
else:
ans=ans+s
print(ans)
T4
python技巧:
python string method :split
注意
s_split=s.split()
s_split是一个list,list中每个元素是string
class Solution:
def reverseWords(self, s: str) -> str:
s=s.strip()
s_split=s.split()
for i in range(len(s_split)):
s_split[i]=s_split[i][::-1]
return ' '.join(s_split)
错误不合题意,还要整体再翻转一次
class Solution:
def reverseWords(self, s: str) -> str:
s=s.strip()
s_split=s.split()
for i in range(len(s_split)):
s_split[i]=s_split[i][::-1]
a=' '.join(s_split)
a=a[::-1]
return a
T5
k=int(input())
s=str(input())
n=len(s)
s_1=s+s
res=""
for i in range(0,n):
res+=s_1[n-k+i]
print(res)
文章介绍了几种Python中的字符串处理技巧,包括in-place翻转字符串、使用切片进行部分翻转、字符串分割与合并等,展示了如何在LEetCode题目中高效地处理字符串操作。
339

被折叠的 条评论
为什么被折叠?



