
C++写法:
一次全局反转加上两次局部反转就可以完成前后调换的操作。
class Solution {
public:
string reverseLeftWords(string s, int n) {
reverse(s.begin(),s.begin()+n);
reverse(s.begin()+n,s.end());
reverse(s.begin(),s.end());
return s;
}
};
python版本直接进行切片返回就好了,不用修改字符串,而且python字符串不能修改
class Solution:
def reverseLeftWords(self, s: str, n: int) -> str:
return s[n:] + s[0:n]
python版本,可以将字符串转化为列表操作,再转化回来
class Solution:
def reverseLeftWords(self, s: str, n: int) -> str:
s=list(s)
s[0:n]=list(reversed(s[0:n]))
s[n:]=list(reversed(s[n:]))
s.reverse()
return "".join(s)
这篇博客探讨了如何在C++和Python中实现字符串的前后部分交换。C++通过一次全局反转加上两次局部反转来完成操作,而Python则可以直接利用切片功能简洁地实现,无需修改原始字符串。此外,还提供了在Python中将字符串转换为列表进行操作的方法。
240

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



